...

PowerBuilder 入門

by user

on
Category: Documents
849

views

Report

Comments

Transcript

PowerBuilder 入門
PowerBuilder 入門
PowerBuilder®
9
DOCUMENT ID: 37772-01-0900-01
LAST REVISED: March 2003
Copyright © 1989-2004 by Sybase, Inc. All rights reserved.
本書に記載 さ れてい る ソ フ ト ウ ェ アは、 Sybase ラ イ セ ン ス契約に基づいて Sybase, Inc. が提供 し 、 かか る 契約の条項に従 う
場合にのみ使用が許諾 さ れ ます。
本書に記載 さ れてい る 内容は、 Sybase, Inc. お よ びその関連会社の書面に よ る 許可な く 、 いかな る 形態、 ま たは手段、 電子
的、 機械的、 手作業、 光学的お よ びその他にかかわ ら ず、 複製、 転載お よ び翻訳を禁 じ ます。
Sybase, Sybase ( ロ ゴ) , AccelaTrade, ADA Workbench, Adaptable Windowing Environment, Adaptive Component Architecture,
Adaptive Server, Adaptive Server Anywhere, Adaptive Server Enterprise, Adaptive Server Enterprise Monitor, Adaptive Server
Enterprise Replication, Adaptive Server Everywhere, Adaptive Server IQ, Adaptive Warehouse, Anywhere Studio, Application
Manager, AppModeler, APT Workbench, APT-Build, APT-Edit, APT-Execute, APT-FORMS, APT-Translator, APT-Library, Backup
Server, BizTracker, ClearConnect, Client-Library, Client Services, Convoy/DM, Copernicus, Data Pipeline, Data Workbench,
DataArchitect, Database Analyzer, DataExpress, DataServer, DataWindow, DB-Library, dbQueue, Developers Workbench, Direct
Connect Anywhere, DirectConnect, Distribution Director, e-ADK, E-Anywhere, e-Biz Integrator, E-Whatever, EC Gateway, ECMAP,
ECRTP, eFulfillment Accelerator, Embedded SQL, EMS, Enterprise Application Studio, Enterprise Client/Server, Enterprise Connect,
Enterprise Data Studio, Enterprise Manager, Enterprise SQL Server Manager, Enterprise Work Architecture, Enterprise Work Designer,
Enterprise Work Modeler, eProcurement Accelerator, EWA, Financial Fusion, Financial Fusion Server, Gateway Manager, GlobalFIX,
ImpactNow, Industry Warehouse Studio, InfoMaker, Information Anywhere, Information Everywhere, InformationConnect,
InternetBuilder, iScript, Jaguar CTS, jConnect for JDBC, MainframeConnect, Maintenance Express, MDI Access Server, MDI
Database Gateway, media.splash, MetaWorks, MySupport, Net-Gateway, Net-Library, New Era of Networks, ObjectConnect,
ObjectCycle, OmniConnect, OmniSQL Access Module, OmniSQL Toolkit, Open Biz, Open Client, Open ClientConnect, Open Client/
Server, Open Client/Server Interfaces, Open Gateway, Open Server, Open ServerConnect, Open Solutions, Optima++, PB-Gen, PC APT
Execute, PC Net Library, Power++, power.stop, PowerAMC, PowerBuilder, PowerBuilder Foundation Class Library, PowerDesigner,
PowerDimensions, PowerDynamo, PowerJ, PowerScript, PowerSite, PowerSocket, Powersoft, PowerStage, PowerStudio, PowerTips,
Powersoft Portfolio, Powersoft Professional, PowerWare Desktop, PowerWare Enterprise, ProcessAnalyst, Rapport, Report Workbench,
Report-Execute, Replication Agent, Replication Driver, Replication Server, Replication Server Manager, Replication Toolkit, Resource
Manager, RW-DisplayLib, S-Designor, SDF, Secure SQL Server, Secure SQL Toolset, Security Guardian, SKILS, smart.partners,
smart.parts, smart.script, SQL Advantage, SQL Anywhere, SQL Anywhere Studio, SQL Code Checker, SQL Debug, SQL Edit, SQL
Edit/TPU, SQL Everywhere, SQL Modeler, SQL Remote, SQL Server, SQL Server Manager, SQL SMART, SQL Toolset, SQL Server/
CFT, SQL Server/DBM, SQL Server SNMP SubAgent, SQL Station, SQLJ, STEP, SupportNow, S.W.I.F.T. Message Format Libraries,
Sybase Central, Sybase Client/Server Interfaces, Sybase Financial Server, Sybase Gateways, Sybase MPP, Sybase SQL Desktop, Sybase
SQL Lifecycle, Sybase SQL Workgroup, Sybase User Workbench, SybaseWare, Syber Financial, SyberAssist, SyBooks, System 10,
System 11, System XI ( ロ ゴ ), SystemTools, Tabular Data Stream, TradeForce, Transact-SQL, Translation Toolkit, UltraLite.NET,
UNIBOM, Unilib, Uninull, Unisep, Unistring, URK Runtime Kit for UniCode, Viewer, Visual Components, VisualSpeller,
VisualWriter, VQL, WarehouseArchitect, Warehouse Control Center, Warehouse Studio, Warehouse WORKS, Watcom, Watcom SQL,
Watcom SQL Server, Web Deployment Kit, Web.PB, Web.SQL, WebSights, WebViewer, WorkGroup SQL Server, XA-Library, XAServer お よ び XP Server は Sybase, Inc. の登録商標です。
Unicode お よ び Unicode の ロ ゴは Unicode, Inc. の登録商標です。
本書で使用 さ れ る 会社名お よ び製品名はそれぞれの会社の商標お よ び登録商標です。
本書に記載 さ れてい る 内容は、 将来予告な し に変更す る こ と が あ り ます。 ま た、 本 ソ フ ト ウ ェ アお よ び説明書を使用 し た
こ と に よ る 損害、 ま たは第三者か ら のいかな る 請求について も 、 サ イ ベース株式会社、 その親会社であ る 米国法人 Sybase,
Inc. ま たはその関連会社は、 一切の責任を負わない も の と し ます。
目次
本書について .................................................................................................................................. ix
第1部
PowerBuilder の紹介
第1章
PowerBuilder の概要 ................................................................................................. 3
PowerBuilder と は............................................................................ 3
PowerBuilder の環境 ........................................................................ 6
PowerBuilder オブ ジ ェ ク ト ........................................................... 11
第2章
PowerBuilder チ ュ ー ト リ アルについて ........................................................ 21
ク ラ イ ア ン ト / サーバー ア プ リ ケーシ ョ ンの構築方法の学習 ...... 21
PowerDynamo Web ア プ リ ケーシ ョ ンの構築方法の学習............. 23
JSP Web サービ ス ア プ リ ケーシ ョ ンの構築方法の学習 .............. 24
チ ュ ー ト リ アルの進め方................................................................ 25
所要時間 .................................................................................. 26
学習する内容 ........................................................................... 26
チ ュ ー ト リ アルのセ ッ ト ア ッ プ ..................................................... 27
第2部
ク ラ イ ア ン ト / サーバー ア プ リ ケーシ ョ ンの構築
レ ッスン 1
PowerBuilder の起動 .....................................................................
ワー ク スペースの新規作成 ............................................................
タ ーゲ ッ ト の作成 ..........................................................................
ア プ リ ケーシ ョ ンのア イ コ ンの指定..............................................
メ イ ン ウ ィ ン ド ウのサイ ズ変更 ....................................................
ア プ リ ケーシ ョ ンの実行................................................................
32
35
40
43
46
PowerBuilder の環境のカ ス タ マ イ ズ ............................................
シ ス テム ツ リ ー ウ ィ ン ド ウの操作 ...............................................
オ ブ ジ ェ ク ト のオープ ン ................................................................
ビ ュ ーの操作..................................................................................
50
52
54
レ ッスン 2
PowerBuilder 入門
31
49
iii
目次
新規ス ク リ プ ト ビ ュ ーの追加.................................................
ビ ュ ーの タ イ ト ル バーの表示.................................................
ビ ュ ーの浮動化 と 固定化.........................................................
タ ブ付き ビ ュ ーの操作 ............................................................
ビ ュ ーのレ イ アウ ト 構成の保存 ..............................................
ビ ュ ー レ イ アウ ト 構成を標準設定に戻す...............................
ツールバーのセ ッ ト ア ッ プ ............................................................
ツールバー ボ タ ン上への ラ ベルの表示 ..................................
ツールバーの浮動化 ................................................................
ツールバーの再配置 ................................................................
55
56
56
57
58
59
60
60
61
62
レ ッスン 3
ロ グ イ ン ウ ィ ン ド ウの作成............................................................. 65
ウ ィ ン ド ウの新規作成 ................................................................... 66
コ ン ト ロールの追加....................................................................... 70
ピ ク チ ャの追加 ....................................................................... 72
ス タ テ ィ ッ ク テキス ト コ ン ト ロールの追加 .......................... 74
ス タ テ ィ ッ ク テキス ト コ ン ト ロールのプ ロパテ ィ の指定 .... 74
シ ングル ラ イ ン エデ ィ ッ ト コ ン ト ロールの追加................... 76
シ ングル ラ イ ン エデ ィ ッ ト コ ン ト ロールのプ ロパテ ィ の
指定 .................................................................................. 77
コ マ ン ド ボ タ ン コ ン ト ロールの追加...................................... 78
コ マ ン ド ボ タ ン コ ン ト ロールのプ ロパテ ィ の指定 ................ 79
ウ ィ ン ド ウの タ ブ順序の変更 ........................................................ 80
Help イ ベ ン ト の コ ーデ ィ ング と ウ ィ ン ド ウのプ レ ビ ュ ー ............ 82
ログ イ ン ウ ィ ン ド ウを開 く ス ク リ プ ト の記述 .............................. 86
フ レーム ウ ィ ン ド ウの Open イ ベン ト の修正 ....................... 87
ス ク リ プ ト の コ ンパイル......................................................... 90
レ ッスン 4
デー タ ベースへの接続 ..................................................................... 91
EAS Demo DB デー タ ベースの参照 .............................................. 92
EAS Demo DB デー タ ベース プ ロ フ ァ イルの参照................. 93
EAS Demo DB デー タ ベースのテーブル定義の参照 .............. 96
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行........................................... 101
グローバル変数の宣言 ................................................................. 104
接続情報の変更 ............................................................................ 109
of_GetConnectionInfo 関数の変更 ........................................ 109
接続サービ ス マネージ ャの呼び出 し .................................... 111
ログ イ ンおよびログアウ ト ス ク リ プ ト の完了 ............................ 114
オー ト ス ク リ プ ト シ ョ ー ト カ ッ ト の設定............................. 115
[OK] ボ タ ンの Clicked イ ベン ト に対する コ ー ド の追加 ..... 116
[キ ャ ン セル] ボ タ ンの Clicked イ ベ ン ト に対する コ ー ド
の追加............................................................................. 118
iv
PowerBuilder
目次
ア プ リ ケーシ ョ ンの Close イ ベン ト に対する コ ー ド の
追加 ................................................................................ 119
ア プ リ ケーシ ョ ンの実行.............................................................. 121
先祖ウ ィ ン ド ウの変更 ..................................................................
探索パスへの ラ イ ブ ラ リ の追加...................................................
先祖シー ト ウ ィ ン ド ウの新規作成 ..............................................
新規シー ト ウ ィ ン ド ウの継承階層の作成.............................
マス タ ー デー タ ウ ィ ン ド ウ用のデー タ ウ ィ ン ド ウ
コ ン ト ロール (dw_master) の追加 ..............................
詳細デー タ ウ ィ ン ド ウ用のデー タ ウ ィ ン ド ウ コ ン ト ロール
(dw_detail) の追加 ........................................................
ユーザ オブ ジ ェ ク ト か ら継承 さ れたス ク リ プ ト の参照 .......
ユーザ イ ベ ン ト および イ ベ ン ト ス ク リ プ ト の追加 ....................
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う
ス ク リ プ ト の追加...........................................................
シー ト ウ ィ ン ド ウのサイ ズに合わせた実行時の設定の調整.......
123
124
126
127
レ ッスン 6
メ ニ ュ ーの設定 .............................................................................
フ レーム メ ニ ュ ーの修正.............................................................
[フ ァ イル] メ ニ ュ ーの修正 .................................................
[ヘルプ] メ ニ ュ ー項目の有効化 ..........................................
シー ト メ ニ ュ ーの新規作成 .........................................................
継承 さ れる新規 メ ニ ュ ーの作成お よび保存 ..........................
新規 メ ニ ュ ーへの メ ニ ュ ー項目の追加 .................................
新規 メ ニ ュ ー項目のツールバーの追加 .................................
ユーザ イ ベ ン ト を発生 さ せる メ ニ ュ ー ス ク リ プ ト の追加 .........
新規 メ ニ ュ ーのア タ ッ チ と ア プ リ ケーシ ョ ンの実行 ..................
143
144
145
147
149
150
151
154
156
158
レ ッスン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成 ........................................
デー タ ウ ィ ン ド ウ オ ブ ジ ェ ク ト の新規作成 と プ レ ビ ュ ー ..........
デー タ ウ ィ ン ド ウ オ ブ ジ ェ ク ト の保存 .......................................
1 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更 ..............
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成 .........................
デー タ ソ ースおよびス タ イルの選択....................................
テーブル と カ ラ ムの選択 .......................................................
検索引数の定義 .....................................................................
WHERE 句の指定..................................................................
デー タ ウ ィ ン ド ウ ペ イ ン タ でのデー タ ウ ィ ン ド ウの表示 ...
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の保存 ................................
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更 ..............
カ ラ ム と ラ ベルの再配置 .......................................................
ラ ベル と カ ラ ムの整列 ..........................................................
161
162
166
167
169
169
170
171
172
173
176
178
178
180
レ ッスン 5
PowerBuilder 入門
129
131
132
134
138
142
v
目次
ド ロ ッ プダウン デー タ ウ ィ ン ド ウ編集ス タ イルの矢印の
表示 ................................................................................ 181
レ ッスン 8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ .................................
マス タ ー デー タ ウ ィ ン ド ウ コ ン ト ロールへの
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ ..................
詳細デー タ ウ ィ ン ド ウ コ ン ト ロールへのデー タ ウ ィ ン ド ウ
オブ ジ ェ ク ト のア タ ッ チ ................................................
ア プ リ ケーシ ョ ンの実行..............................................................
商品管理 ウ ィ ン ド ウへのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の
ア タ ッ チ .........................................................................
ア プ リ ケーシ ョ ンの再実行 ..........................................................
183
184
187
189
193
195
レ ッスン 9
デバ ッ ガの実行.............................................................................. 199
ア プ リ ケーシ ョ ンのス ク リ プ ト へのブ レー ク ポ イ ン ト の追加 .... 200
デバ ッ グ モー ド でのア プ リ ケーシ ョ ンの実行 ............................ 204
ウ ォ ッ チ と 条件ブ レー ク ポ イ ン ト の設定 .................................... 209
レ ッ ス ン 10
例外処理 ........................................................................................ 211
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加 ... 212
シー ト ウ ィ ン ド ウの作成...................................................... 213
メ イ ン ア プ リ ケーシ ョ ン フ レームか ら シー ト ウ ィ ン ド ウ
にア ク セスで き る よ う にする ......................................... 215
ユーザ定義の例外オブ ジ ェ ク ト の作成 ........................................ 218
新規のユーザ関数 と ユーザ イ ベン ト の作成................................ 220
メ ソ ッ ド の呼び出 し と 例外の捕捉 ............................................... 223
ア プ リ ケーシ ョ ンの実行.............................................................. 226
新規のシー ト ウ ィ ン ド ウのテ ス ト ....................................... 226
ゼロによ る除算エ ラ ーのテ ス ト の追加 ................................. 229
レ ッ ス ン 11
ア プ リ ケーシ ョ ン配布の準備 ........................................................
プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成 ..............................................
実行 フ ァ イルの作成.....................................................................
シ ョ ー ト カ ッ ト の作成 .................................................................
実行 フ ァ イルのテ ス ト .................................................................
vi
233
234
237
239
241
PowerBuilder
第3部
WEB ア プ リ ケーシ ョ ンの構築
レ ッ ス ン 12
Web ページの作成 ........................................................................ 245
PowerDynamo Web サイ ト の作成 ............................................... 247
基本 Web ページの作成 と 修正..................................................... 250
4GL を用いた Web ページの作成.......................................... 250
フ ォ ン ト の変更...................................................................... 253
グ ラ フ ィ ッ ク の追加 .............................................................. 254
グ ラ フ ィ ッ ク への絶対位置の追加......................................... 255
ページ ナ ビゲーシ ョ ンの追加...................................................... 257
商品情報の Web ページの作成.............................................. 257
ハイパー リ ン クの追加........................................................... 258
ボ タ ンの追加 ......................................................................... 259
検証 と リ ダ イ レ ク ト を行 う ログ イ ン ページの作成 ..................... 261
基本ログ イ ン ページの作成................................................... 262
セ ッ シ ョ ン変数の追加........................................................... 263
シ ン グル ラ イ ン テキス ト コ ン ト ロールの追加.................... 264
パスワー ド の検証の追加 ....................................................... 266
サーバ リ ダ イ レ ク ト の追加................................................... 268
ス タ ー ト ページの指定................................................................. 269
Web サイ ト の配布 と 実行............................................................. 270
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方................................................... 273
EAServer 接続プ ロ フ ァ イルのセ ッ ト ア ッ プ ............................... 275
Web デー タ ウ ィ ン ド ウ コ ン テナの構築 ...................................... 277
Web デー タ ウ ィ ン ド ウ コ ン テナ を使用 し ての Web ページの
作成................................................................................. 279
デー タ ウ ィ ン ド ウ Web ページへのほかの コ ン ト ロールの追加 .. 282
新規の商品情報ボ タ ンの有効化 ............................................ 282
デー タ ベース を更新するボ タ ンの追加.................................. 285
[商品情報] ページへのハイパー リ ン クの追加 ..................... 285
既存の Web ページへのデー タ ウ ィ ン ド ウの追加........................ 287
商品情報の検索機能の追加 .......................................................... 290
Web ア プ リ ケーシ ョ ンのテ ス ト と 実行 ....................................... 292
Addproduct.htm Web ページのテ ス ト ................................... 292
デー タ ベースへの新 し い商品の追加 ..................................... 294
Web ア プ リ ケーシ ョ ンの実行............................................... 295
PowerBuilder 入門
vii
第4部
JSP WEB サービ ス ア プ リ ケーシ ョ ンの作成
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成............................... 303
JSP タ ーゲ ッ ト の作成 ................................................................. 304
簡単な JSP ア プ リ ケーシ ョ ン での Web サービ スの利用............ 307
JSP ア プ リ ケーシ ョ ンの非 4GL ページの作成..................... 307
ア プ リ ケーシ ョ ンのス タ ー ト ページ を完成 さ せる............... 310
JSP Web サービ ス プ ロキシ ウ ィ ザー ド を使用する ............ 312
Web サービ スへの呼び出 し の追加........................................ 314
ア プ リ ケーシ ョ ンの構築、 配布、 実行.................................. 317
4GL JSP ア プ リ ケーシ ョ ン での Web サービ スの利用................ 318
4GL JSP ページの作成.......................................................... 318
4GL ページへの Web サービ ス と ページ変数の追加............. 319
4GL JSP ページへのテーブルの追加 .................................... 320
Web サービ スへの呼び出 し の完了........................................ 323
4GL JSP ページの構築、 配布、 実行 .................................... 325
索 引............................................................................................................................................. 327
viii
PowerBuilder
本書について
目的
こ のマ ニ ュ アルは、 PowerBuilder を使用 し て開発を始め る ための
情報を提供 し てい ます。
•
第 1 部 PowerBuilder 開発環境の概要です。
•
第 2 部 PowerBuilder アプ リ ケーシ ョ ン を初めて構築 さ れ る 方
のためのチ ュ ー ト リ アルです。
•
第 3 部 PowerDynamo Web タ ーゲ ッ ト の作成、 Web サ イ ト の
配布 と 実行、 お よ び Web デー タ ウ ィ ン ド ウ の使い方について
のチ ュ ー ト リ アルです。
•
第 4 部 Web サービ ス の ク ラ イ ア ン ト ページ を含む JSP Web
タ ーゲ ッ ト を作成お よ び実行す る チ ュ ー ト リ アルです。
対象 と する読者
こ のマ ニ ュ アルは、 PowerBuilder を使用 し て アプ リ ケーシ ョ ン を
構築す る あ ら ゆ る 開発者を対象 と し てい ます。
オ ン ラ イ ン ヘルプ
PowerBuilder を使用 し て開発 し てい る と き はいつで も 、 オ ン ラ イ
ン ヘルプ を参照で き ます。 オン ラ イ ン ヘルプでは、 以下の こ と を
参照で き ます。
•
•
操作手順
アプ リ ケーシ ョ ン作成の操作手順
リ フ ァ レ ン ス情報
ト ピ ッ ク や コ ン ポーネ ン ト に対す る リ フ ァ
レ ン ス情報
•
状況依存ヘルプ
ス ク リ プ ト 中の関数や予約語に対す る 状況依
存ヘルプ
関連マニ ュ アル
PowerBuilder 入門
次の表に、 PowerBuilder のマニ ュ アル セ ッ ト を、 項目ご と に分け
て示 し ます。
項目
マニ ュ アル
説明
イ ン ス ト ール、
機能ガ イ ド 、 お
よびチ ュ ー ト リ
アル
PowerBuilder イ ン ス
ト ール ガ イ ド
PowerBuilder の イ ン ス ト ール方法
を解説 し てい ます。
PowerBuilder 入門
PowerBuilder について概説 し 、基本
的な使い方 を 段階的に学べ る
チ ュー ト リ アルです。
ix
項目
アプ リ ケーシ ョ
ン開発
マニ ュ アル
ユーザーズ ガ イ ド
説明
PowerBuilder でペ イ ン タ を 使用 し
て オブ ジ ェ ク ト を 構築す る 方法 を
解説 し てい ます。
アプ リ ケーシ ョ ン
テクニッ ク
共通の ア プ リ ケーシ ョ ン機能 を 実
装す る た め の テ ク ニ ッ ク 集の ほ
か、 配布に関す る 詳細や、 ク ロ ス
プ ラ ッ ト フ ォーム アプ リ ケーシ ョ
ン の開発 と 配布の た めの ア ド バ イ
ス を紹介 し てい ます。
サ ポ ー ト し て い る すべ て の環境
(PowerBuilder、 Web ページ、 Java)
でデー タ ウ ィ ン ド ウ を 使用す る 方
法や、 デー タ のア ク セ ス、 表示、 操
作、 更新に関す る プ ロ グ ラ ミ ン グ
のテ ク ニ ッ ク を説明 し ます。
PowerBuilder の Web タ ーゲ ッ ト を
ビ ル ド 、 配布、 デバ ッ グ、 実行す
る 方法を解説 し てい ます。
デー タ ウ ィ ン ド ウ
プ ロ グ ラ マーズ ガ
イド
Web タ ーゲ ッ ト と
JSP タ ーゲ ッ ト での
作業
プ ロ グ ラ マーズ
リ フ ァ レンス
PowerScript リ フ ァ
レンス
デー タ ウ ィ ン ド ウ
リ ファ レンス
Web タ ーゲ ッ ト と
JSP タ ーゲ ッ ト リ
ファ レンス
Web タ ーゲ ッ ト オブジ ェ ク ト モデ
ルのオブ ジ ェ ク ト お よ び ク ラ ス の
リ フ ァ レ ン ス が載っ てい ます。
オブジ ェ ク ト と コ
ン ト ロ ール
PowerBuilder シ ス テ ム の オ ブ ジ ェ
ク ト お よ び コ ン ト ロ ールのプ ロ パ
テ ィ 、 イ ベ ン ト 、 関連す る 関数の
リ ス ト を示 し ます。
PBNI を使用 し て PowerBuilder エ ク
ス テ ン シ ョ ン を 作成 し 、 C++ ア プ
リ ケーシ ョ ン と 対話す る 方法お よ
び リ フ ァ レ ン ス 情報 を 掲載 し て い
ます。
PowerBuilder ネ イ
ティブ インタ
フ ェ ース (PBNI)
プ ロ グ ラ マーズ ガ
イ ド と リ ファ レン
ス
x
PowerScript 言語 (変数、 式、 ス テー
ト メ ン ト 、 関数、 イ ベ ン ト ) の構
文 と 使い方を解説 し てい ます。
デー タ ウ ィ ン ド ウ オブジ ェ ク ト の
リ フ ァ レ ン ス 情報 (た と え ば、 式
のプ ロ パ テ ィ や関数、 デー タ やプ
ロ パ テ ィ に ア ク セ ス す る た めの構
文、 すべて のサ ポー ト 環境におけ
る デー タ ウ ィ ン ド ウ コ ン ト ロ ール
やデー タ ス ト ア の メ ソ ッ ド 、 イ ベ
ン ト 、 お よ びプ ロ パ テ ィ の リ フ ァ
レ ン ス な ど) を掲載 し てい ます。
PowerBuilder
本書について
項目
マニ ュ アル
PowerBuilder エ ク ス
テンシ ョ ン リ フ ァ
レンス
デー タ ベース関
連
デー タ ベース と の
接続
PowerBuilder
Foundation Class
Library (PFC)
接続 リ フ ァ レ ン ス
データ ベース 接続を 作成、 定義、 確
立、 保守、 ト ラ ブルシュ ーティ ン グ
する ための手順を 掲載し ていま す。
PFC ユーザーズ ガ
イド
ア プリ ケ ーシ ョ ン 開発プロ セ ス を
加速する ためのオブジェ ク ト 、サー
ビ ス 、およ びユーティ リ ティ を 含む
PFC(PowerBuilder Foundation Class)
の使用方法 と 拡張方法につい て解
説 し てい ます。
PFC で提供し ている オブジェ ク ト 、
イ ン ス タ ン ス 変数、 イ ベン ト 、 関数
について解説し ていま す。
PFC オブジ ェ ク ト
リ フ ァ レンス
そのほかの参考資料
説明
PBNI を使用 し て作成 し た
PowerBuilder 拡張モジ ュ ール
(PBDOM、 EJBClient、 Web サービ
ス な ど) についての リ フ ァ レ ン ス
です。
PowerBuilder か ら の デー タ ベー ス
へ の 接 続 方 法 の ほ か、 Powersoft
ODBC イ ン タ フ ェ ー ス ま たはネ イ
テ ィ ブ の Powersoft デー タ ベー ス
イ ン タ フ ェ ー ス のいずれか を 介 し
て ア ク セ ス さ れ る デー タ ベー ス 接
続の セ ッ ト ア ッ プ、 定義、 管理方
法について解説 し てい ます。
製品に関す る そのほかの詳細情報については、 Sybase のテ ク ニ カル ラ
イ ブ ラ リ CD、 お よ びテ ク ニ カル ラ イ ブ ラ リ 製品マニ ュ アル Web サ イ
ト (英語) を参照 し て く だ さ い。
•
ソ フ ト ウ ェ ア付属のテ ク ニ カル ラ イ ブ ラ リ CD には、 製品マニ ュ
アルが含ま れてい ます。 製品マニ ュ アルは、 PDF 形式にて提供 し
てい ます。
テ ク ニ カル ラ イ ブ ラ リ CD の使い方については、 テ ク ニ カル ラ イ
ブ ラ リ CD 内の Readme.txt フ ァ イ ルを参照 し て く だ さ い。
•
テ ク ニ カル ラ イ ブ ラ リ 製品マニ ュ アルの Web サ イ ト (英語)には、
Product Manuals http://www.sybase.com/support/manuals/ か ら ア ク セ ス
で き ます。
サポー ト について
製品に同梱 し てい る 「サポー ト ハン ド ブ ッ ク 」 を参照 し て く だ さ い。
PowerBuilder 入門
xi
xii
PowerBuilder
第
1
部
PowerBuilder の紹介
第 1 部は、 PowerBuilder 開発環境の概要です。
第 1 章
PowerBuilder の概要
こ の章について
こ の 章 で は、 チ ュ ー ト リ ア ル の 第 2 部 か ら 第 4 部 で 使用す る
PowerBuilder 開発環境について解説 し ます。 ま た、 PowerBuilder の
構築ブ ロ ッ ク について も 解説 し ます。
内容
詳細について
項目
PowerBuilder と は
PowerBuilder の環境
ページ
3
6
PowerBuilder オブジェ ク ト
12
PowerBuilder 開発環境についての詳細は、 『PowerBuilder ユーザー
ズ ガ イ ド 』 マニ ュ アルを参照 し て く だ さ い。
PowerBuilder と は
PowerBuilder は、 多 く の種類のア プ リ ケーシ ョ ンお よ び コ ン ポー
ネ ン ト を構築す る ための企業向け開発ツールです。PowerBuilder を
使用すれば、 ク ラ イ ア ン ト / サーバ アプ リ ケーシ ョ ン、 多層アプ
リ ケーシ ョ ン、 お よ び イ ン タ ーネ ッ ト アプ リ ケーシ ョ ン を開発で
き ます。
PowerBuilder ア プ リ ケー
シ ョ ンの構成について
PowerBuilder 入門
PowerBuilder ク ラ イ ア ン ト アプ リ ケーシ ョ ン の構成内容は以下の
と お り です。
メ ニ ュ ー、 ウ ィ ン ド ウ 、 お よ び ウ ィ ン
ド ウ コ ン ト ロ ールです。 ユーザは こ れ ら と 対話す る こ と でア
プ リ ケーシ ョ ン を制御 し ます。
•
ユーザ イ ン タ フ ェ ース
•
ア プ リ ケーシ ョ ン処理ロ ジ ッ ク イ ベ ン ト お よ び関数 の ス ク リ
プ ト です。 ビ ジネ ス ルールや入力条件則な ど の処理 コ ー ド を
こ の中に記述 し ます。 PowerBuilder では、 アプ リ ケーシ ョ ン処
理 ロ ジ ッ ク の コ ー ド を ユーザ イ ン タ フ ェ ー ス の一部 と し て、
ま たは カ ス タ ム ク ラ ス ユーザ オブ ジ ェ ク ト と 呼ばれ る 別の
モジ ュ ール と し て記述で き ます。
3
PowerBuilder と は
PowerBuilder ア プ リ
ケーシ ョ ンのコ ンポー
ネ ン ト について
多層アプ リ ケーシ ョ ン では、 アプ リ ケーシ ョ ン処理 ロ ジ ッ ク が含ま れ
てい る モジ ュ ールを サーバに配布で き ます。 ま た EAServer コ ン ポーネ
ン ト ま たは COM コ ン ポーネ ン ト と し て機能す る よ う に設計 さ れた コ
ン ポーネ ン ト を構築す る こ と も で き ます。
PowerBuilder イ ベン
ト 駆動型のア プ リ ケー
ション
ク ラ イ ア ン ト アプ リ ケーシ ョ ン では、 ユーザが と る ア ク シ ョ ン に よ っ
て処理内容が制御 さ れ ま す。 た と えば、 ユーザがボ タ ン を ク リ ッ ク し
た り 、 メ ニ ュ ー項目を選択 し た り 、 テ キ ス ト ボ ッ ク ス にデー タ を入力
す る と 、 1 つ ま たは複数の イ ベン ト が発生 し ま す。 開発者は イ ベン ト
発生時に実行す る処理を ス ク リ プ ト に記述 し ます。
ウ ィ ン ド ウ や コ ン ト ロ ールな ど、 PowerBuilder で作成す る アプ リ ケー
シ ョ ン コ ン ポーネ ン ト には、 定義済み イ ベン ト のセ ッ ト が用意 さ れて
い ます。 た と えば、 各ボ タ ン には Clicked イ ベン ト 、 各テ キ ス ト ボ ッ
ク ス には Modified イ ベン ト が関連付け ら れてい ます。 たいていの場合
は定義済みの イ ベン ト だけ あれば十分ですが、 場合に よ っ ては独自の
イ ベン ト を定義す る 必要が生 じ る こ と も あ り ます。
PowerScript 言語
ス ク リ プ ト は、PowerBuilder の PowerScript 言語を使用 し て記述 し ます。
ス ク リ プ ト は、 イ ベン ト に応答 し て処理を実行す る ための PowerScript
コ マ ン ド 、 関数、 お よ びス テー ト メ ン ト か ら 構成 さ れます。
た と えば、 ボ タ ン の Clicked イ ベン ト 用ス ク リ プ ト を使用 し て、 デー タ
ベー ス か ら 情報 を 取 り 出 し て 表示 し た り 、 テ キ ス ト ボ ッ ク ス の
Modified イ ベ ン ト 用 ス ク リ プ ト を 使用 し て、 デー タ を 評価 し て そ の
デー タ に基づいて処理を実行で き ます。
ま た、 あ る イ ベン ト ス ク リ プ ト を実行 し て、 別の イ ベン ト を発生 さ せ
る こ と も 可能です。 た と えば、 ボ タ ン の Clicked イ ベン ト 用ス ク リ プ ト
を実行 し 、 別の ウ ィ ン ド ウ の Open イ ベン ト を発生 さ せて その ウ ィ ン
ド ウ を開 く こ と も で き ます。
PowerScript 関数
PowerScript には豊富な組み込み関数が用意 さ れてお り 、 こ れ ら の関数
を使用す る こ と でアプ リ ケーシ ョ ン の各種 コ ン ポーネ ン ト の操作を行
う こ と がで き ま す。 た と えば、 関数には ウ ィ ン ド ウ を開 く 関数、 ウ ィ
ン ド ウ を閉 じ る 関数、 ボ タ ン を有効にす る 関数、 デー タ ベース を更新
す る関数な ど があ り ます。
ま た、 PowerBuilder では開発者が独自の関数を作成 し て、 アプ リ ケー
シ ョ ン固有の処理を定義す る こ と も で き ます。
4
PowerBuilder
第1章
PowerBuilder の概要
PowerBuilder でのオ
ブ ジ ェ ク ト 指向プ ログ
ラ ミ ング
PowerBuilder で作成 さ れ る メ ニ ュ ーや ウ ィ ン ド ウ は、 それぞれ独立 し
たモジ ュ ールであ り 、 オブジ ェ ク ト と 呼ばれ ます。 こ れ ら の作成オブ
ジ ェ ク ト を組み合わせて アプ リ ケーシ ョ ン を構築 し ま す。 各オブジ ェ
ク ト には、 そのオブ ジ ェ ク ト に適 し た特性お よ び動作 (プ ロ パテ ィ 、
イ ベン ト 、 関数) が含ま れてい ます。 カ プセル化、 継承、 多相性 (ポ
リ モ フ ィ ズ ム) の よ う なオブジ ェ ク ト 指向プ ロ グ ラ ミ ン グ テ ク ニ ッ ク
を利用す る こ と に よ り 、 作成 さ れた各オブジ ェ ク ト を最大限に活用 し
て、 再利用性が高 く 、 拡張性に富み、 高性能なオブジ ェ ク ト を使用す
る こ と がで き ます。
イ ン タ ーネ ッ ト ア プ
リ ケーシ ョ ン
Enterprise エデ ィ シ ョ ン を使用 し てい る 場合は、 Web タ ーゲ ッ ト テ ク
ノ ロ ジ を利用 し て Web 上で稼働す る PowerBuilder アプ リ ケーシ ョ ン を
開発で き ます。 Web タ ーゲ ッ ト を使用す る と 、 ク ラ イ ア ン ト サ イ ド ス
ク リ プ ト 、 サーバ サ イ ド ス ク リ プ ト 、 デー タ ベース コ ン テ ン ツ、 Web
デー タ ウ ィ ン ド ウ 、お よ び EAServer コ ン ポーネ ン ト を含む複雑な Web
ページ を構築で き ます。
ど の エ デ ィ シ ョ ン の PowerBuilder で も 、 デー タ ウ ィ ン ド ウ お よ び
PowerBuilder ウ ィ ン ド ウ プ ラ グ イ ン、PowerBuilder ウ ィ ン ド ウ ActiveX、
お よ び ActiveX 対応のデー タ ウ イ ン ド ウ Web コ ン ト ロ ールを使用で き
ます。
Web タ ーゲ ッ ト については、『Web タ ーゲ ッ ト と JSP タ ーゲ ッ ト での作
業』 マニ ュ アル を参照 し て く だ さ い。 PowerBuilder のプ ラ グ イ ン につ
いては、 『アプ リ ケーシ ョ ン テ ク ニ ッ ク 』 マ ニ ュ アル を参照 し て く だ
さ い。ActiveX 対応の デー タ ウ ィ ン ド ウ Web コ ン ト ロ ールについては、
『デー タ ウ ィ ン ド ウ プ ロ グ ラ マーズ ガ イ ド 』 マニ ュ アルお よ び 『デー
タ ウ ィ ン ド ウ リ フ ァ レ ン ス』 マニ ュ アルを参照 し て く だ さ い。
多層ア プ リ ケーシ ョ ン
PowerBuilder を使用すれば、 分散 コ ン ピ ュ ーテ ィ ン グ環境で稼働す る
アプ リ ケーシ ョ ン を開発で き ま す。 多層アプ リ ケーシ ョ ン には以下の
利点があ り ます。
•
ビ ジネ ス ロ ジ ッ ク をサーバ (EAServer サーバ ま たは MTS) に集中
さ せ る こ と がで き る
•
ア プ リ ケ ー シ ョ ン 機能 を ク ラ イ ア ン ト と サーバに分割で き る た
め、 ク ラ イ ア ン ト の負荷を軽減で き る
•
保守が容易な ス ケー ラ ブル アプ リ ケーシ ョ ン を構築で き る
多層アプ リ ケーシ ョ ン については、『アプ リ ケーシ ョ ン テ ク ニ ッ ク 』 マ
ニ ュ アルの分散型ア プ リ ケーシ ョ ン テ ク ニ ッ ク に関す る 節を 参照 し
て く だ さ い。
PowerBuilder 入門
5
PowerBuilder の環境
デー タ ベース接続
PowerBuilder では、 さ ま ざ ま なデー タ ベー ス に格納 さ れた企業の情報
に簡単 に ア ク セ ス で き ま す。 デー タ は、 PowerBuilder ODBC ま た は
JDBC イ ン タ フ ェース、 中間層のデー タ ア ク セ ス サーバを介 し て、 あ
る いはデー タ ベースへのネ イ テ ィ ブ (直接) 接続に よ っ て ア ク セ ス で
き ます。
デー タ ベース接続については、 『デー タ ベース と の接続』 マニ ュ アルを
参照 し て く だ さ い。
オ ン ラ イ ン ヘルプ と
ド キュ メ ン ト
PowerBuilder のオン ラ イ ン ヘルプは、 イ ン タ フ ェース の [ヘルプ] ボ
タ ン お よ び メ ニ ュ ー項目、 ま たは 〔F1〕 キーに よ っ て、 PowerBuilder
のど こ か ら で も ア ク セ ス で き ます。 オ ン ラ イ ン ヘルプの さ ま ざ ま な場
所か ら HTML 形式のブ ッ ク にジ ャ ン プで き ます。オ ン ラ イ ン ヘルプに
は、 HTML 形式のマニ ュ アルへのジ ャ ン プ項目があ り ます。
PowerBuilder の環境
ワー ク スペース と タ ー
ゲッ ト
PowerBuilder では、 ワ ー ク ス ペース 内で 1 つ ま たは複数の タ ーゲ ッ ト
を操作 し ま す。 タ ーゲ ッ ト を必要な だけ ワ ー ク ス ペー ス に追加 し て、
複数の タ ーゲ ッ ト 内のオブジ ェ ク ト を開いて編集 し 、 それぞれの タ ー
ゲ ッ ト を一度に構築 し て配布で き ます。
PowerBuilder の タ ーゲ ッ ト は、 以下の 2 種類のいずれかです。
ク ラ イ ア ン ト / サーバ実行アプ リ ケーシ ョ
ン、 多層実行可能アプ リ ケーシ ョ ン、 ま たはサーバ コ ン ポーネ ン
ト です。
•
PowerScript タ ーゲ ッ ト
•
Web タ ーゲ ッ ト
Web アプ リ ケーシ ョ ン です。Web サ イ ト 構築に必
要な要素 (HTML フ ァ イ ル、 ス ク リ プ ト 、 画像、 ダ ウ ン ロ ー ド さ
れた コ ン ポーネ ン ト ) のほか、 構築オプ シ ョ ン、 デー タ ベー ス 接
続、 配布の設定な ど が含まれてい ます。
チ ュー ト リ アルの最初の レ ッ ス ン では、 ワ ー ク スペース と PowerScript
タ ーゲ ッ ト の作成方法を案内 し ます。 以降の レ ッ ス ン では、 Web タ ー
ゲ ッ ト の作成方法を学びます。
6
PowerBuilder
第1章
PowerBuilder の概要
開発環境
PowerBuilder を起動す る と 、 上部に メ ニ ュ ー バー と パ ワーバー、 左端
にシス テム ツ リ ーと ク リ ッ プ ウ ィ ン ド ウ のある ウ ィ ン ド ウ が開 き ます。
システム ツ リ ー
シ ス テ ム ツ リ ー ウ ィ ン ド ウ は、 開発活動の中心 と し て機能 し ます。 シ
ス テ ム ツ リ ー ウ ィ ン ド ウ を使用 し て、 タ ーゲ ッ ト のオープ ン、 実行、
デバ ッ グ、 お よ び構築や、 ド ラ ッ グ ア ン ド ド ロ ッ プ プ ロ グ ラ ミ ン グ
を行い ます。
クリ ップ ウィ ンドウ
ク リ ッ プ ウ ィ ン ド ウ には、頻繁に使用す る コ ー ド フ ラ グ メ ン ト を保存
で き ます。
出力ウ ィ ン ド ウ
メ イ ン ウ ィ ン ド ウ の下部にあ る 出力 ウ ィ ン ド ウ には、 各種の操作 (移
行、 構築、 配布、 プ ロ ジ ェ ク ト 実行、 オブジ ェ ク ト の保存、 お よ び検
索) の出力が表示 さ れ ます。
ペイン タ
ワ ー ク スペース と PowerScript タ ーゲ ッ ト を作成 し た ら 、ペ イ ン タ を使
用 し て タ ーゲ ッ ト の コ ン ポーネ ン ト を構築 し ます。 ペ イ ン タ にはオブ
ジ ェ ク ト を作成す る ための ツールが提供 さ れてい ます。
PowerBuilder では、 作成す る オブ ジ ェ ク ト の種類に対 し てそれぞれペ
イ ン タ が用意 さ れてい ます。 た と えば、 ウ ィ ン ド ウ は ウ ィ ン ド ウ ペ イ
ン タ で作成 し ます。 ウ ィ ン ド ウ ペ イ ン タ で ウ ィ ン ド ウ のプ ロ パテ ィ を
定義 し 、 ボ タ ンやテ キ ス ト ボ ッ ク ス な ど の コ ン ト ロ ールを追加で き ま
す。
PowerBuilder 入門
7
PowerBuilder の環境
エデ ィ タ
Web タ ーゲ ッ ト には、HTML、ス タ イ ルシー ト 、フ レーム セ ッ ト エデ ィ
タ が用意 さ れてい ます。 HTML エデ ィ タ では、 ソ ース形式や表示形式
でページ を編集 し た り 、 結果を プ レ ビ ュ ーで き ます。 ス タ ン ド ア ロ ン
型の ス ク リ プ ト エデ ィ タ 、 ま たは HTML エデ ィ タ に組み込 ま れた エ
デ ィ タ を使用で き ます。
ウ ィ ザー ド
ウ ィ ザー ド を使用す る と 、 アプ リ ケーシ ョ ン、オブジ ェ ク ト 、 コ ン ポー
ネ ン ト 、 Web サ イ ト 、 お よ び Web ページ を簡単に作成で き ます。
デザイ ン タ イム コ ン
ト ロール
デザ イ ン タ イ ム コ ン ト ロ ール (DTC) では、 プ ロ パテ ィ シー ト で指
定 し た情報に基づいて、 基本的な HTML お よ びス ク リ プ ト を作成で き
ます。 プ ロ パテ ィ シー ト は、 HTML エデ ィ タ で DTC を Web ページ上
に ド ロ ッ プす る と 表示 さ れ ます。
Web デー タ ウ ィ ン ド ウ の DTC を使用す る と 、 Web ページか ら デー タ
ベース に簡単にア ク セ ス で き ます。 DTC を使用す る と 、 動的なデー タ
ベー ス コ ン テ ン ツ が さ ま ざ ま な形式で表示 さ れ ま す。 ま た、 DTC に
よ っ て、 デー タ ベース に対す る 挿入、 更新、 削除がサポー ト さ れます。
To-Do リ ス ト
To-Do リ ス ト には、 現在の タ ーゲ ッ ト に対 し て実行す る 必要のあ る 開
発 タ ス ク の リ ス ト が表示 さ れ ま す。 To-Do リ ス ト 上のエ ン ト リ は、 ほ
と ん ど の PowerBuilder ウ ィ ザー ド で自動的に作成で き ます。 エン ト リ
を 入力、 ま たは テ キ ス ト フ ァ イ ルか ら エ ン ト リ を イ ン ポー ト し た後
で、それ ら のエン ト リ を遂行す る タ ス ク に リ ン ク す る こ と も 可能です。
ブ ラ ウザ
ブ ラ ウ ザを使用す る と 、 オブジ ェ ク ト 、 メ ソ ッ ド 、 変数、 お よ び構造
体の う ち、PowerScript タ ーゲ ッ ト 用に定義 し た も のや PowerScript タ ー
ゲ ッ ト で使え る も の をすべて表示で き ます。 ブ ラ ウ ザ内のオブジ ェ ク
ト は、 アルフ ァ ベ ッ ト 順ま たは階層順に表示で き ます。 メ ソ ッ ド と と
も に、 (あ ら ゆ る 引数お よ び戻 り 値のデー タ 型を含む) 完全な署名 も 、
ブ ラ ウ ザに表示 さ れます。
パワーバー
パ ワーバーは、PowerBuilder セ ッ シ ョ ン を開始す る と 表示 さ れます。パ
ワーバーは、 アプ リ ケーシ ョ ン構築に際 し て中心的な役割を果た し ま
す。 パ ワーバーで [新規作成] 、 [オブジ ェ ク ト の継承] 、 ま たは [開
く ] ボ タ ン を ク リ ッ ク す る と 、 すべての PowerBuilder ペ イ ン タ を開 く
こ と がで き ます。パ ワ ーバーでは、ブ ラ ウ ザを開いて、現行アプ リ ケー
シ ョ ン のデバ ッ グや実行、 お よ び ワ ー ク スペース の構築や配布を行え
ます。
8
PowerBuilder
第1章
PowerBuilder の概要
ペ イ ン タ バー
ペ イ ン タ ま たはエデ ィ タ を開 く と 、 ワ ー ク ス ペー ス のあ る ウ ィ ン ド ウ
が表示 さ れ ます。 構築す る オブジ ェ ク ト の設計は、 こ の ワー ク スペー
ス で行い ま す。 ま た、 PowerBuilder では、 ボ タ ン付 き のペ イ ン タ バー
が 1 つま たは複数表示 さ れ ます。 こ のボ タ ン を使用す る と 、 ペ イ ン タ
ま たはエデ ィ タ で使用可能な ツールに簡単にア ク セ ス で き ます。
ス タ イルバー
テ キ ス ト コ ン ト ロ ールを含め る こ と がで き る ペ イ ン タ (た と えば ウ ィ
ン ド ウ ペ イ ン タ ) を開 く と 、 ス タ イ ルバーが表示 さ れ ます。 ス タ イ ル
バー上のボ タ ン を使用 し て、 フ ォ ン ト やポ イ ン ト サ イ ズな ど のテ キ ス
ト プ ロ パテ ィ を変更で き ます。
PowerTips
ボ タ ンの上にマ ウ ス ポ イ ン タ を数秒置 く と 、 ボ タ ン についての簡単な
説明 (PowerTips) が表示 さ れ ます 。 PowerTips の表示 と 非表示は、 任
意の ツ ールバーの ポ ッ プ ア ッ プ メ ニ ュ ーで [PowerTips の表示] メ
ニ ュ ー項目を選択 し て切 り 替え ます。
ま た、任意のツールバーのポ ッ プア ッ プ メ ニ ュ ーで [テ キ ス ト の表示]
を選択すれば、 機能を簡単に示すテ キ ス ト を それぞれの ツールバー ボ
タ ン上に表示す る こ と も で き ます。
環境のカ ス タ マ イ ズ
ツールバー ボ タ ン のテ キ ス ト 表示に加え て、 ツールバーの配置場所を
変更 し た り 、 新規ツールバーの追加や既存の ツールバーのカ ス タ マ イ
ズ を行 う こ と も で き ます。 ま た 「ペ イ ン タ を開 く 」 な ど の作業を実行
す る ボ タ ン を追加す る こ と も で き ます。
シ ス テ ム ツ リ ー、 ク リ ッ プ ビ ュ ー、 お よ び出力ビ ュ ーの並べ替え、 各
ペ イ ン タ のカ ス タ ム レ イ ア ウ ト のセ ッ ト ア ッ プ、 最後に使用 し た ワー
ク ス ペー ス を ペ イ ン タ やエデ ィ タ の起動時に開 く か ど う か の選択、
シ ョ ー ト カ ッ ト キーのカ ス タ マ イ ズ、 さ ら に ス ク リ プ ト に使用す る 色
と フ ォ ン ト の変更な ど も 行 う こ と がで き ます。
パワーバーのボ タ ン
PowerBuilder 入門
パ ワーバー上のボ タ ン を使用すれば、 頻繁に使用す る PowerBuilder の
タ ス ク にすばや く ア ク セ ス で き ます。
9
PowerBuilder の環境
表 1-1: パワーバーのボ タ ン
ボタン
説明
ワ ー ク スペース、 タ ーゲ ッ ト 、 コ ン ポーネ ン ト な ど のオブジ ェ
ク ト を新規作成す る か、 ま たはツールを開 く
メ ニ ュ ー、 ユーザ オブジ ェ ク ト 、 ま たは ウ ィ ン ド ウ を継承す る
既存のアプ リ ケーシ ョ ン、 デー タ ウ ィ ン ド ウ、 関数、 メ ニ ュ ー、
パ イ プ ラ イ ン、 プ ロ ジ ェ ク ト 、 ク エ リ 、 構造体、 ユーザ オブ
ジ ェ ク ト 、 ウ ィ ン ド ウ 、 HTML ページ、 HTML フ レーム、 ス タ
イ ルシー ト 、 ま たは ス ク リ プ ト フ ァ イ ルを開 く
ウ ィ ン ド ウ オブジ ェ ク ト ま たはデー タ ウ ィ ン ド ウ オブジ ェ ク
ト をプ レ ビ ュ ー表示す る
シ ス テ ム ツ リ ー ウ ィ ン ド ウ の表示 と 非表示を切 り 替え る
出力 ウ ィ ン ド ウ の表示 と 非表示を切 り 替え る
出力 ウ ィ ン ド ウ内の次の行に移動す る
出力 ウ ィ ン ド ウ内の直前の行に移動す る
実行す る 必要のあ る 開発 タ ス ク の リ ス ト を表示す る 。 こ れ ら は
ユーザが手動で入力す る か、 PowerBuilder ウ ィ ザー ド で自動的
に入力が可能
オブ ジ ェ ク ト プ ロ パテ ィ やグ ロ ーバル変数の よ う な オブ ジ ェ
ク ト 情報を参照 し た り 、 コ ピー、 エ ク ス ポー ト 、 印刷を行 う
ク リ ッ プ ウ ィ ン ド ウ の表示 と 非表示を切 り 替え る
オブジ ェ ク ト を格納す る ラ イ ブ ラ リ の作成や管理を行 う
デー タ ベースへの接続の方法を指定す る
EAServer への接続の方法を指定す る
10
PowerBuilder
第1章
ボタン
PowerBuilder の概要
説明
デー タ ベー ス の管理、 デー タ ベー ス へのユーザ ア ク セ ス の制
御、 デー タ ベース内のデー タ の操作を行 う
フ ァ イ ルを編集する
ワ ー ク スペース の イ ン ク リ メ ン タ ル構築を開始する
ワ ー ク スペース の フル構築を開始する
ワ ー ク スペース を配布する
ワ ー ク ス ペー ス の フ ル配布な ど の一連の操作が進行 し て い る
間に、 次の操作に飛ぶ こ と も 可能
構築や配布の操作、 ま たは一連の操作を停止する
現在の タ ーゲ ッ ト に対 し てデバ ッ グ を実行する
タ ーゲ ッ ト を選択 し 、 そのデバ ッ グ を実行する
現在の タ ーゲ ッ ト を実行する
タ ーゲ ッ ト を選択 し て実行する
PowerBuilder を終了す る
PowerBuilder 入門
11
PowerBuilder オブ ジ ェ ク ト
PowerBuilder オブ ジ ェ ク ト
PowerScript タ ーゲ ッ ト の基本構築ブ ロ ッ ク と し て のオ ブ ジ ェ ク ト に
は、 以下の も のがあ り ます。
表 1-2: PowerScript タ ーゲ ッ ト の基本構築ブ ロ ッ ク
オブ ジ ェ ク ト
アプ リ ケーシ ョ ン
ウィンドウ
デー タ ウ ィ ン ド ウ
メ ニ ュー
グ ロ ーバル関数
クエ リ
構造体
ユーザ オブジ ェ ク ト
パイプラ イ ン
プロジェ ク ト
説明
ア プ リ ケ ー シ ョ ン の 構築作業 の 前 に ア プ リ ケ ー
シ ョ ン オブジ ェ ク ト を作成す る
ユーザ と PowerBuilder ア プ リ ケーシ ョ ン間の主要
な イ ン タ フ ェ ース
リ レ ーシ ョ ナル デー タ ベー ス やほ かのデー タ リ
ソ ース か ら デー タ を取得お よ び操作す る
現行の ア ク テ ィ ブ ウ ィ ン ド ウ で選択可能な コ マ ン
ド やオプシ ョ ン を一覧表示す る
一般的な目的の処理を実行す る
デー タ ウ ィ ン ド ウ オブジ ェ ク ト のデー タ ソ ース と
し て繰 り 返 し 使用 さ れ る SQL 文
1 つ ま たは複数の関連す る 変数 を 1 つの名前で グ
ループ化 し た コ レ ク シ ョ ン
再使用可能な処理モジ ュ ール、ま たはビ ジ ュ アルあ
る いは非ビ ジ ュ アルな コ ン ト ロ ールのセ ッ ト
1 つのデー タ ベー ス ま た は複数のデー タ ベー ス 間
でデー タ を複製 (転送) す る
ユーザ配布用に ア プ リ ケーシ ョ ン を パ ッ ケージ化
する
こ れ ら のオブジ ェ ク ト については、 以降の節で詳 し く 解説 し ます。
ア プ リ ケーシ ョ ン オ
ブジ ェ ク ト
PowerBuilder で は、 ア プ リ ケ ー シ ョ ン の構築作業の前に ア プ リ ケ ー
シ ョ ン オブジ ェ ク ト を作成 し ます。アプ リ ケーシ ョ ン オブジ ェ ク ト と
は、 ウ ィ ン ド ウ 、 メ ニ ュ ー、 関数、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト な
ど と 同様に、 ラ イ ブ ラ リ (PBL フ ァ イ ル) 内に保存 さ れ る 独立 し たオ
ブジ ェ ク ト です。
アプ リ ケーシ ョ ン オブジ ェ ク ト には、アプ リ ケーシ ョ ン レベルの動作
形態を定義 し ます。 た と えば、 テ キ ス ト のデフ ォ ル ト フ ォ ン ト と し て
ど の フ ォ ン ト を使用す る か、 アプ リ ケーシ ョ ン を開始す る と き と 終了
す る と き に行 う 処理の内容な ど を定義 し ます。
12
PowerBuilder
第1章
PowerBuilder の概要
ユーザがアプ リ ケーシ ョ ン を実行す る と 、 アプ リ ケーシ ョ ン オブジ ェ
ク ト の Open イ ベン ト が発生 し ま す。 アプ リ ケーシ ョ ン内のア ク テ ィ
ビ テ ィ は、Open イ ベン ト 用に記述 し た ス ク リ プ ト に よ っ て開始 さ れま
す。 ユーザがアプ リ ケーシ ョ ン を終了す る と 、 アプ リ ケーシ ョ ン オブ
ジ ェ ク ト の Close イ ベン ト が発生 し ます。
通常は、 アプ リ ケーシ ョ ン の終了に必要な作業 (デー タ ベー ス を閉 じ
る 、 環境設定フ ァ イ ルに書 き込みをす る な ど) をすべて、 Close イ ベン
ト 用に記述 し た ス ク リ プ ト で実行 し ます。 実行中に PowerBuilder の例
外処理 メ カ ニ ズ ム に よ っ て捕捉で き ない深刻なエ ラ ーが発生 し た場合
は、 アプ リ ケーシ ョ ン オブジ ェ ク ト の SystemError イ ベン ト が発生 し
ます。
図 1-1: ア プ リ ケーシ ョ ンのラ イ フ サイ ク ル
ウィ ンドウ
ウ ィ ン ド ウ は、 ユーザ と PowerBuilder アプ リ ケーシ ョ ン間の主要な イ
ン タ フ ェ ース です。 ウ ィ ン ド ウ は、 情報を表示 し た り 、 ユーザに情報
を要求 し た り 、ユーザに よ る マ ウ スやキーボー ド の操作に応答 し ます。
ウ ィ ン ド ウ は以下の内容か ら 構成 さ れ ます。
PowerBuilder 入門
•
プ ロ パテ ィ : ウ ィ ン ド ウ の外観や動作を定義す る (た と えば、 ウ ィ
ン ド ウ に タ イ ト ル バーや最小化ボ タ ン を付け る こ と も 可能)。
•
イ ベン ト : ユーザのア ク シ ョ ン に よ っ て発生す る
13
PowerBuilder オブ ジ ェ ク ト
•
コ ン ト ロ ール : ウ ィ ン ド ウ 上に配置 さ れ る ス タ テ ィ ッ ク テ キ ス ト
や コ マ ン ド ボ タ ン な ど の総称
ウ ィ ン ド ウ には、 以下の図の よ う に、 い ろ いろ な種類の コ ン ト ロ ール
があ り ます。
ウ ィ ン ド ウ の左端には、 水平 ト ラ ッ ク バーお よ び垂直 ト ラ ッ ク バーが
付いたデー タ ウ ィ ン ド ウ コ ン ト ロ ールがあ り ます。 右端には、 グルー
プ ボ ッ ク ス (ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ール、 ス ピ ン コ ン ト ロ ー
ル プ ロ パテ ィ をオ ン に し たエデ ィ ッ ト マ ス ク コ ン ト ロ ール、チ ェ ッ ク
ボ ッ ク ス を含む) と 、 そのグループ ボ ッ ク ス よ り も 小 さ な、 ラ ジオボ
タ ン付 き グループ ボ ッ ク ス 2 つがあ り ます。グループ ボ ッ ク ス の下部
には、 コ マ ン ド ボ タ ン があ り ます。
デー タ ウ ィ ン ド ウ オ
ブジ ェ ク ト
デー タ ウ ィ ン ド ウ オブジ ェ ク ト は、 リ レーシ ョ ナル デー タ ベースやほ
かのデー タ ソ ース (た と えば、 Excel の ワー ク シー ト や dBASE フ ァ イ
ル) のデー タ の検索や操作を行 う オブジ ェ ク ト です。
提示様式 デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト では、 ユーザがい く つかの
種類の中か ら 提示様式を選択 し 、 その提示様式を使用 し てデー タ を処
理 し ます。た と えば、タ ブ ラ 提示様式やフ リ ーフ ォーム提示様式でデー
タ を表示で き ます。
14
PowerBuilder
第1章
PowerBuilder の概要
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のデー タ の提示お よ び操作を 向上 さ
せ る には、 た く さ んの方法があ り ます。 た と えば、 デー タ ウ ィ ン ド ウ
の検索デー タ に直接結び付け ら れた計算フ ィ ール ド やピ ク チ ャ 、 グ ラ
フ な ど も 使用で き ます。
表示様式、 編集様式、 入力条件則 カ ラ ム に対す る 表示様式、 編集様式、
入力条件則を定義す る こ と に よ っ て、 カ ラ ム にデー タ を表示す る と き
の書式を指定 し た り 、 デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト で入力 さ れた
デー タ を確認で き ます。
以下に例を示 し ます。
•
PowerBuilder 入門
数個の決 ま っ た値 し か入力で き ないカ ラ ム の場合、 デー タ を ラ ジ
オ ボ タ ン と し て表示 し 、 エ ン ド ユーザに値を選択 さ せます。
15
PowerBuilder オブ ジ ェ ク ト
•
デー タ が電話番号、 給与額、 日付の場合、 デー タ に適 し た表示様
式を指定で き ます。
•
限 ら れた範囲の数値 し か入力で き ないカ ラ ム には、 入力条件則を
指定 し ま す。 入力条件則を使用すれば、 入力 さ れたデー タ が有効
か ど う か を判定す る コ ー ド を記述す る必要がな く な り ます。
EAServer ま たは MTS で実行さ れる PowerBuilder
コ ン ポーネ ン ト を使用 し て HTML を生成す る こ と に よ り 、HTML 形式
のデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト を 生成 し て ブ ラ ウ ザで表示で き ま
す。 Web タ ーゲ ッ ト での Web デー タ ウ ィ ン ド ウ の使用方法について
は、 チ ュ ー ト リ アルの レ ッ ス ンの 1 つで案内 し ます。
Web デー タ ウ ィ ン ド ウ
メ ニ ュー
メ ニ ュ ーは、 ユーザが現行のア ク テ ィ ブな ウ ィ ン ド ウ の メ ニ ュ ー バー
で選択で き る メ ニ ュ ー項目の リ ス ト です。 通常、 メ ニ ュ ー項目はそれ
ぞれ関連があ り ま す。 メ ニ ュ ーには、 コ マ ン ド が用意 さ れた り 、 あ る
タ ス ク を実行す る ための代替手段が用意 さ れ ま す。 コ マ ン ド と は、 た
と えば、 PowerBuilder の [フ ァ イ ル] メ ニ ュ ーの [開 く ] や [名前を
付けて保存] な ど です。 代替手段 と はた と えば、 ウ ィ ン ド ウ ペ イ ン タ
の [編集] メ ニ ュ ーの項目な ど であ り 、各項目はそれぞれペ イ ン タ バー
のボ タ ン に対応 し ます。
マ ウ スやキーボー ド で メ ニ ュ ー項目を選択 し た り 、 メ ニ ュ ー項目に対
し て定義 し て あ る ア ク セ ラ レー タ (ニーモ ッ ク ア ク セ ス) キーを使用
で き ます。 [ツール|シ ョ ー ト カ ッ ト ] メ ニ ュ ー項目を選択 し て開いた
ダ イ ア ロ グ ボ ッ ク ス で、 任意の PowerBuilder メ ニ ュ ー項目のキーボー
ド シ ョ ー ト カ ッ ト を独自に定義で き ます。
16
PowerBuilder
第1章
PowerBuilder の概要
ド ロ ッ プダ ウ ン メ ニ ューは、 メ ニ ュー バーの メ ニ ュー項目の下に表示
さ れ る メ ニ ュ ーで す。 カ ス ケ ー ド メ ニ ュ ーは、 ド ロ ッ プ ダ ウ ン メ
ニ ュ ーの隣に表示 さ れ る メ ニ ュ ーです。
PowerBuilder では、 メ ニ ューの選択肢を それぞれ、 メ ニ ュ ー オブジ ェ
ク ト と し て定義 し ます。 上図の ウ ィ ン ド ウ では メ ニ ュ ー バーに 2 つの
メ ニ ュー オブジ ェ ク ト ([フ ァ イ ル] と [デー タ ]) があ り ます。 [デー
タ ] の ド ロ ッ プダ ウ ン メ ニ ュ ーには 3 つの メ ニ ュー オブジ ェ ク ト ([更
新]、 [削除]、 [キ ャ ン セル]) があ り 、 [更新] メ ニ ュ ーのカ ス ケー ド
メ ニ ューに 2 つの メ ニ ュ ー オブジ ェ ク ト ([現在の行]、[すべての行])
があ り ます。
グローバル関数
PowerBuilder では、 以下の 2 種類の関数を定義で き ます。
•
オブ ジ ェ ク ト 関数は、 特定のオブジ ェ ク ト 型 (た と えば、 ウ ィ ン
ド ウ や メ ニ ュ ー) 用に定義 さ れ、 そのオブ ジ ェ ク ト 関数が定義 さ
れてい る オブ ジ ェ ク ト の内部に カプセル化 さ れ ま す。 さ ら に、 シ
ス テ ム関数 (特定のオブジ ェ ク ト ク ラ ス のオブジ ェ ク ト がいつで
も 使用で き る関数) と ユーザ定義関数に分類 さ れ ます。
•
グ ロ ーバル関数は、ど のオブジ ェ ク ト 内に も カプセル化 さ れず、独
立 し たオブジ ェ ク ト と し て格納 さ れます。
グ ロ ーバル関数は、オブジ ェ ク ト 関数 と は異な り 、特定のオブジ ェ
ク ト イ ン ス タ ン ス では使用 し ません。 そのかわ り 、 計算や文字列
処理な ど の一般的な処理に使用 し ます。
クエ リ
PowerBuilder 入門
ク エ リ と は、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト のデー タ ソ ース と し て
再利用で き る よ う に名前を付けて保存 し た SQL 文です。 ク エ リ は、 一
度 コ ー ド を記述すれば必要に応 じ て再利用で き る ので、 開発の効率を
高め る こ と がで き ます。
17
PowerBuilder オブ ジ ェ ク ト
構造体
構造体 と は、 1 つ以上の関連 し 合 う 変数を 1 つの名前の も と にグルー
プ化 し た集合体です。 Pascal や COBOL の よ う な言語では、 構造体は
レ コー ド と 呼ばれてい ます。
構造体では、 関連 し 合 う 変数を個々にではな く 1 つの集合体 と し て参
照で き ます。 た と えば、 従業員のユーザ ID、 住所、 ア ク セ ス レベル、
ピ ク チ ャ (ビ ッ ト マ ッ プ) を user_struct と い う 構造体 と し て定義す る
と 、 こ れ ら の変数の集合を user_struct と し て参照で き ます。
構造体には以下の 2 種類があ り ます。
ユーザ オブ ジ ェ ク ト
•
オブ ジ ェ ク ト 構造体は、 ウ ィ ン ド ウ や メ ニ ュ ーの よ う に特定のオ
ブジ ェ ク ト の種類に関連付け ら れ、 常にそのオブジ ェ ク ト の ス ク
リ プ ト で使用で き ま す。 ま た、 構造体を ほかの ス ク リ プ ト か ら ア
ク セ ス で き る よ う に設定す る こ と も で き ます。
•
グ ロ ーバル構造体は、 アプ リ ケーシ ョ ン内のオブジ ェ ク ト やオブ
ジ ェ ク ト タ イ プには関連付け ら れてい ま せん。 グ ロ ーバル構造体
の イ ン ス タ ン ス を宣言す る と 、 アプ リ ケーシ ョ ン の任意の ス ク リ
プ ト でその イ ン ス タ ン ス を参照で き ます。
アプ リ ケーシ ョ ン にはたいてい共通の機能があ り ます。 た と えば、 多
く のアプ リ ケーシ ョ ンは、 一連の操作を実行 し た後で ウ ィ ン ド ウ を閉
じ る ボ タ ン ( [閉 じ る] ボ タ ン) や、 同 じ 種類のエ ラ ー チ ェ ッ ク を行
う 複数のデー タ ウ ィ ン ド ウ コ ン ト ロ ールを備え てい ます。 アプ リ ケー
シ ョ ン には、 標準フ ァ イ ル ビ ュ ーアが必要な も の も あ り ます。
同 じ ア プ リ ケーシ ョ ン 機能 を 繰 り 返 し 利用す る 場合は、 ユーザ オブ
ジ ェ ク ト を定義 し ま す。 ユーザ オブジ ェ ク ト を一度定義 し てお く と 、
必要な と き に再利用で き ます。
ユーザ オブジ ェ ク ト は、 ビ ジ ュ アル ま たは非ビ ジ ュ アル ( ク ラ ス) で
す。 さ ら に標準ユーザ オブジ ェ ク ト と カ ス タ ム ユーザ オブジ ェ ク ト
に分類で き ます。 標準ユーザ オブジ ェ ク ト は、 ビ ジ ュ アルであ る か非
ビ ジ ュ アルで あ る かに関係な く 、 PowerBuilder シ ス テ ム で常に使用で
き る オブジ ェ ク ト です。 PowerBuilder の外部で作成 さ れた外部ビ ジ ュ
アル オブジ ェ ク ト 用の コ ン ト ロ ールを使用す る こ と も で き ます。 ユー
ザ オブジ ェ ク ト は、 以下の 2 つに大別 さ れ ます。
•
18
ビ ジ ュ アル ユーザ オブ ジ ェ ク ト : 再利用可能な コ ン ト ロ ール、ま た
は一貫性のあ る 動作を行 う 一連の コ ン ト ロ ールです。 た と えば、 1
つの単位 と し て機能す る複数のボ タ ン か ら 1 つのビ ジ ュ アル ユー
ザ オブジ ェ ク ト の作成が可能です。 ボ タ ン には標準的な処理を実
行す る ス ク リ プ ト を 割 り 当 て て お く こ と が で き ま す。 一度オ ブ
ジ ェ ク ト を定義 し てお く と 、 必要な時に使用で き ます。
PowerBuilder
第1章
•
PowerBuilder の概要
ク ラ ス ユーザ オブ ジ ェ ク ト : ビ ジ ュ アル コ ン ポーネ ン ト を持た な
い、 再利用可能な処理モジ ュールです。 ク ラ ス オブジ ェ ク ト は通
常、 ビ ジネ ス ルールを定義 し た り 、 一連の処理を 1 つの単位 と し
て定義す る のに使用 し ま す。 た と えば、 手数料の計算や統計の分
析を行 う 場合に使用で き ます。 こ う し た処理を実行す る ためには、
ク ラ ス ユーザ オブジ ェ ク ト を定義 し ます。ク ラ ス ユーザ オブジ ェ
ク ト を使用す る には、 ス ク リ プ ト でオブジ ェ ク ト の イ ン ス タ ン ス
を作成 し 、 そのオブジ ェ ク ト 関数を呼び出 し ます。
関数や変数を 定義する カス タ ム ク ラ ス オブジェ ク ト は、PowerBuilder
の多層アプ リ ケーシ ョ ン の基礎にな っ てい ます。
ラ イブラ リ
ウ ィ ン ド ウ や メ ニ ュ ーの よ う なオブジ ェ ク ト は ラ イ ブ ラ リ (PBL フ ァ
イ ル) に格納 し ます。 アプ リ ケーシ ョ ン を実行す る と 、 ラ イ ブ ラ リ か
ら オブジ ェ ク ト が検索 さ れ ます。 ま た、 アプ リ ケーシ ョ ン では必要な
数だけ ラ イ ブ ラ リ を使用で き ま す。 アプ リ ケーシ ョ ン で使用す る ラ イ
ブ ラ リ は、 アプ リ ケーシ ョ ン を作成す る と き に指定 し ます。
プロジ ェ ク ト
実行可能 ア プ リ ケ ーシ ョ ン を 構築す る プ ロ ジ ェ ク ト オ ブ ジ ェ ク ト 、
サーバへの配布が可能な コ ン ポーネ ン ト 、お よ び EAServer アプ リ ケー
シ ョ ン で使用す る プ ロ キ シ オブジ ェ ク ト を作成で き ます。
PowerBuilder 入門
19
PowerBuilder オブ ジ ェ ク ト
20
PowerBuilder
第 2 章
PowerBuilder チ ュ ー ト リ アルに
ついて
こ の章について
こ の章では、 チ ュ ー ト リ アルの内容 と セ ッ ト ア ッ プの方法につい
て解説 し ます。
内容
項目
ク ラ イ ア ン ト / サーバー ア プリ ケ ーショ ン の構築方法の学習
ページ
21
PowerDynamo Web ア プリ ケ ーショ ン の構築方法の学習
JSP Web サービ ス ア プリ ケ ーシ ョ ン の構築方法の学習
23
23
チュ ート リ ア ルの進め方
所要時間
25
26
学習する 内容
チュ ート リ ア ルのセッ ト ア ッ プ
26
27
ク ラ イアン ト / サーバー アプ リ ケーシ ョ ンの構築方法の学習
PowerBuilder チ ュ ー ト リ アルは、 4 部構成にな っ て い ま す。 こ の
チ ュー ト リ アルの第 1 部では、 10 通 り の演習を行い ます。 こ の一
連の演習では、 MDI (マルチ ド キ ュ メ ン ト イ ン タ フ ェース) デー
タ ベース アプ リ ケーシ ョ ン を構築 し ます。 こ のアプ リ ケーシ ョ ン
では、 顧客情報や商品情報をデー タ ベース か ら 検索お よ び取得 し
た り 、 顧客お よ び商品のデー タ に対 し て、 デー タ の挿入、 更新、 お
よ び削除を実行 し た り で き ます。
PowerBuilder 入門
21
ク ラ イ ア ン ト / サーバー ア プ リ ケーシ ョ ンの構築方法の学習
顧客情報ウ ィ ン ド ウ と
商品管理ウ ィ ン ド ウ
こ の MDI ア プ リ ケ ー シ ョ ン に は、 EAS Demo DB デ ー タ ベ ー ス の
Customer テーブルお よ び Product テーブルにア ク セ スす る ための、2 つ
の ウ ィ ン ド ウ があ り ます。
こ の 2 つの ウ ィ ン ド ウ が、 マ ス タ ウ ィ ン ド ウ と 詳細 ウ ィ ン ド ウ です。
各 ウ ィ ン ド ウ では、 あ る 特定のテーブルか ら 検索 し たマ ス タ の リ ス ト
を表示 し 、 そのマ ス タ の リ ス ト で選択 し た項目の詳細情報を表示で き
ま す。 た と えば、 商品管理 ウ ィ ン ド ウ では、 上部に商品 リ ス ト が表示
さ れ、 1 つの製品がポ イ ン タ で指 し 示 さ れ ま す。 ウ ィ ン ド ウ の下部に
は上部で選択 さ れた商品の詳細情報が表示 さ れます。
ログ イ ン ウ ィ ン ド ウ
22
MDI アプ リ ケーシ ョ ン には、 起動時にデー タ ベース に接続す る ための
ロ グ イ ン ウ ィ ン ド ウ も 含ま れてい ます。
PowerBuilder
第2章
PowerBuilder チ ュ ー ト リ アルについて
PowerDynamo Web ア プ リ ケーシ ョ ンの構築方法の学習
第 2 部の一連の演習では、 同 じ デー タ ベース に対 し て情報の追加お よ
び検索を実行で き る Web イ ン タ フ ェース を構築 し ます。 ただ し 、 今回
はブ ラ ウ ザを使用 し ません。
チ ュ ト リ アル Web
ページ
PowerDynamo Web タ ーゲ ッ ト の作成チ ュ ー ト リ アルでは、 5 つの Web
ページ を使用 し て、 ロ グ イ ン、 ウ ェ ルカ ム ページへのア ク セ ス、 デー
タ ベース への商品の追加、 商品情報の表示を行い ま す。 次にその一例
と し て ウ ェ ルカ ム ページ を取 り 上げ ます。
Web ページ を使用す る と 、 デー タ ソ ース にア ク セ ス し た り 、 以前に作
成 し た Web デー タ ウ ィ ン ド ウ を表示で き ます。
PowerBuilder Enterprise
チ ュ ー ト リ アルの Web アプ リ ケーシ ョ ン部分を完了 さ せ る には、 以下
の準備が必要です。
PowerBuilder 入門
•
PowerBuilder Enterprise エデ ィ シ ョ ン
•
PowerBuilder の Web タ ーゲ ッ ト オプシ ョ ン の イ ン ス ト ール
•
EAServer と PowerDynamo へのア ク セ ス
23
JSP Web サービ ス ア プ リ ケーシ ョ ンの構築方法の学習
JSP Web サービ ス ア プ リ ケーシ ョ ンの構築方法の学習
JSP Web タ ーゲ ッ ト の作成チ ュー ト リ アルでは、4GL JSP ページ を含む
3 つの JSP ページ を作成 し ま す。 こ の う ち 2 つのページで、 為替レー
ト を計算す る Web サービ ス を呼び出 し ます。
こ のチ ュ ー ト リ アルで作成す る 4GL Web ページの画面 を以下に示 し
ます。
24
PowerBuilder
第2章
PowerBuilder チ ュ ー ト リ アルについて
チ ュ ー ト リ アルの進め方
表 2-1: チ ュ ー ト リ アルを構成する各レ ッ ス ン と その内容
レ ッ スン
1
チ ュ ー ト リ アルの内容
PowerBuilder を起動 し 、 PowerBuilder 開発環境を よ く 理解 し た上
で、PowerBuilder ワ ー ク スペースお よ び タ ーゲ ッ ト でテ ンプ レー
ト ア プ リ ケーシ ョ ン ウ ィ ザー ド を 使用 し て ア プ リ ケーシ ョ ン
オブジ ェ ク ト 、 ウ ィ ン ド ウ 、 お よ び メ ニ ュ ーを作成する
2
PowerBuilder 環境を詳 し く 調べ、ワ ー ク スペース を カ ス タ マ イ ズ
する
3
デー タ ベース に接続す る ロ グ イ ン ウ ィ ン ド ウ を作成す る 。 ユー
ザにデー タ ベー ス 接続パ ラ メ ー タ (ユーザ ID お よ びパ ス ワ ー
ド ) を入力 さ せる
ト ラ ンザ ク シ ョ ン オブジ ェ ク ト と ユーザ入力パ ラ メ ー タ を使用
し てデー タ ベース に接続する 。PowerBuilder 環境におけ る デー タ
ベース プ ロ フ ァ イ ルの定義方法 も 参照す る
マ ス タ ー / 詳細デー タ ウ ィ ン ド ウ コ ン ト ロ ールを追加 し て基本
のベース シー ト ウ ィ ン ド ウ を変更す る 。 ま た、 デー タ を検索 し
た り 、 デー タ ベー ス に対 し て挿入、 更新、 お よ び削除の処理を
行 う ス ク リ プ ト を記述する
4
5
6
アプ リ ケーシ ョ ンの フ レーム メ ニ ュ ーの修正、 新 し いシー ト メ
ニ ュ ーの作成を行 う
7-8
顧客情報や商品情報を 検索する データ ウ ィ ン ド ウ オブジ ェ ク ト
を 作成し 、 顧客情報ウ ィ ン ド ウ と 商品管理ウ ィ ン ド ウ に追加する
9
作成 し た アプ リ ケーシ ョ ン をデバ ッ グ モー ド で実行す る 。 こ こ
では、 ス ク リ プ ト に対す る ブ レ ー ク ポ イ ン ト の設定、 ス テ ッ プ
実行、 変数の表示について学習する
新規の ウ ィ ン ド ウ を作成 し て、PowerBuilder の例外処理を テ ス ト
する
10
11
PowerBuilder 開発環境外で ア プ リ ケーシ ョ ン を実行す る 場合に
使用で き る 実行フ ァ イ ルを作成する
12
PowerDynamo Web タ ーゲ ッ ト の作成、 ハ イ パー リ ン ク お よ びグ
ラ フ ィ ッ ク 付き の Web ページの作成、 検証ス ク リ プ ト を用いた
ロ グ イ ン ページの作成、 Web ページの配布お よ び構築を行 う
Web デー タ ウ ィ ン ド ウ を既存の Web ページに追加す る 。 デー タ
ソ ース に商品情報を追加 し 、 情報を表示で き る よ う にする
4GL お よ び非 4GL ページ を使用 し て JSP Web タ ーゲ ッ ト を作成
し 、 イ ン タ ーネ ッ ト で利用可能な Web サービ ス を呼び出す
13
14
PowerDynamo ま た は JSP Web タ ーゲ ッ ト のみ を 学習 し た い場合は、
チ ュ ー ト リ アルの第 1 部で開発 し た ソ リ ュ ーシ ョ ン を利用で き ま す。
こ の ソ リ ュ ーシ ョ ンは、 Tutorial¥Solutions デ ィ レ ク ト リ にあ り ます。
PowerBuilder 入門
25
チ ュ ー ト リ アルの進め方
所要時間
チ ュー ト リ アルは約 5、 6 時間で全体を学べますが、 あ る レ ッ ス ン を終
え た時点で中断 し て、 後で残 り を引 き 続 き 学ぶ こ と も で き ます。
学習する内容
ク ラ イ ア ン ト / サーバ
ア プ リ ケーシ ョ ン
こ の PowerBuilder チ ュー ト リ アルでは、 以下の基本動作について学習
し ます。
表 2-2: PowerScript チ ュ ー ト リ アルで紹介する機能
機能
アプ リ ケーシ ョ ン
ペイ ン タ
ウ ィ ンド ウ ペイ ンタ
デー タ ウ ィ ン ド ウ
ペイ ン タ
メ ニ ュー ペイ ン タ
レ イ ア ウ ト ビ ュー
ス ク リ プ ト ビ ュー
PowerDynamo または
JSP Web ア プ リ ケー
ション
26
目的
ア プ リ ケ ーシ ョ ン オブ ジ ェ ク ト と ア プ リ ケ ーシ ョ ン
レベルでの ス ク リ プ ト を定義
シ ン グル ラ イ ンエデ ィ ッ ト コ ン ト ロ ール、 ス タ テ ィ ッ
ク テキ ス ト コ ン ト ロ ール、 コ マン ド ボ タ ン コ ン ト ロ ー
ル、 デー タ ウ ィ ン ド ウ コ ン ト ロ ール、 ウ ィ ン ド ウ レベ
ルの ス ク リ プ ト 、 お よ び コ ン ト ロ ール レベルの ス ク リ
プ ト を作成
選択オプシ ョ ン と 表示オプシ ョ ン を定義
メ ニ ュ ー、 メ ニ ュ ー項目、 ア ク セ ラ レー タ キー、 お よ
びシ ョ ー ト カ ッ ト キーを定義
アプ リ ケーシ ョ ン実行時の ウ ィ ン ド ウ、 メ ニ ュ ー、 お
よ びデー タ ウ ィ ン ド ウ の外観を設計
ア プ リ ケ ーシ ョ ン、 ウ ィ ン ド ウ 、 ウ ィ ン ド ウ コ ン ト
ロ ール、 お よ び メ ニ ュ ーの ス ク リ プ ト を定義
デバ ッ ガ
アプ リ ケーシ ョ ン実行時に問題を引 き 起 こ す ロ ジ ッ ク
エ ラ ーを検出
プロ ジ ェ ク ト ペイ
ンタ
アプ リ ケーシ ョ ンの実行フ ァ イ ルを作成
Web タ ーゲ ッ ト の基本的な技術お よ び概念 と し て、 以下の内容を学び
ます。
PowerBuilder
第2章
PowerBuilder チ ュ ー ト リ アルについて
表 2-3: Web タ ーゲ ッ ト チ ュ ー ト リ アルで紹介する機能
機能
目的
Web タ ーゲ ッ ト
ウ ィ ザー ド
Web ページの設計やサーバ と の対話処理の追加、 お よ
びブ ラ ウ ザ環境で作業す る ためのその他の要件を満た
す
ア プ リ ケ ーシ ョ ン、 Web ページ、 お よ び Web コ ン ト
ロ ール用の ス ク リ プ ト を定義する
ページ ビ ュ ー と ソ ー ス ビ ュ ーを用いて Web ページ を
編集 し 、 4GL ページ設計の利用法を学ぶ
ス ク リ プ ト ビ ュー
HTML エデ ィ タ
こ のチ ュ ー ト リ アル を学習 し て も 、 PowerBuilder を完璧に習得で き る
わけではあ り ません。 習得のためには、 実際にアプ リ ケーシ ョ ン を構
築す る 経験を重ね る 必要があ り ます。 し か し 、 こ のチ ュ ー ト リ アルで
実際にアプ リ ケーシ ョ ン を構築す る こ と に よ り 、 今後の学習に必要な
基礎を固め る こ と がで き ます。
チ ュ ー ト リ アルのセ ッ ト ア ッ プ
チ ュ ー ト リ アル開始前に、デー タ ベースへのア ク セ ス が可能な こ と と 、
チ ュ ー ト リ アル フ ァ イ ルがあ る こ と を確認 し て く だ さ い。
デー タ ベース と の接続
チ ュ ー ト リ アルでは、 PowerBuilder と と も に イ ン ス ト ール さ れ る EAS
Demo DB V9 データベース を使用し ます。こ のデータ ベースは、Adaptive
Server Anywhere デー タ ベース であ り 、 Sybase Adaptive Server Anywhere
エン ジ ン を必要 と し ます。
ロ ーカル マシ ン ま たはサーバ上に Sybase Adaptive Server Anywhere を
ま だ イ ン ス ト ール し ていない場合は、 す ぐ に イ ン ス ト ールす る 必要が
あ り ます。 イ ン ス ト ールは、 PowerBuilder の CD-ROM か ら 行 う こ と が
で き ま す。 PowerBuilder をデフ ォ ル ト 以外の場所に イ ン ス ト ール し て
あ る 場合は、EAS Demo DB をデー タ ソ ース と し て定義す る odbc.ini レ
ジ ス ト リ エ ン ト リ が Adaptive Server Anywhere エ ン ジ ン の場所を正 し
く 参照 し てい る こ と を確認 し て く だ さ い。
チ ュ ー ト リ アル デ ィ
レク ト リ
PowerBuilder 入門
チ ュ ー ト リ アルでは、 以下の フ ァ イ ルを使用 し ます。
27
チ ュ ー ト リ アルのセ ッ ト ア ッ プ
表 2-4: PowerScript チ ュ ー ト リ アルに必要な フ ァ イル
フ ァ イル
tutor_pb.pbl
内容
pbtutor.hlp
チ ュ ー ト リ アルで構築 さ れた ウ ィ ン ド ウ に状況依存ヘ
ルプを提供す る ヘルプ フ ァ イ ル
tutsport.bmp
tshirtw.jpg
ビ ッ ト マップ
グラフィ ッ ク
tutorial.ico
アイ コン
チ ュ ー ト リ アルで使用す る オブジ ェ ク ト を含んだ
PowerBuilder ラ イ ブ ラ リ
PowerBuilder を イ ン ス ト ールす る と 、上記のフ ァ イ ルが Tutorial デ ィ レ
ク ト リ に イ ン ス ト ール さ れ ま す。 こ のデ ィ レ ク ト リ は、 PowerBuilder
の イ ン ス ト ール デ ィ レ ク ト リ のサブ デ ィ レ ク ト リ です。
チ ュ ー ト リ アル終了後は、 こ れ ら の フ ァ イ ルを削除 し て も か ま い ませ
ん。
Tutorial¥Solutions
ディ レク ト リ
Tutorial¥Solutions デ ィ レ ク ト リ 内には、 pbtutor.pbl と い う PowerBuilder
ラ イ ブ ラ リ があ り ます。 こ の PowerBuilder ラ イ ブ ラ リ 内には、 チ ュ ー
ト リ アルの第 1 部で作成 し たすべてのオブジ ェ ク ト お よ びス ク リ プ ト
だけでな く 、 ワ ー ク スペースお よ び タ ーゲ ッ ト フ ァ イ ル も 含まれてい
ます。 チ ュ ー ト リ アルの第 1 部が完了す る ま での間は、 こ の ソ リ ュ ー
シ ョ ン ラ イ ブ ラ リ を リ フ ァ レ ン ス と し て使用で き ます。
チ ュ ー ト リ アルの Web ア プ リ ケーシ ョ ン の部分のみ を学習す る 場合
には、 こ の ソ リ ュ ーシ ョ ン ラ イ ブ ラ リ を出発点 と し て使用で き ま す。
246 ページ の「 こ のチュ ート リ ア ルに必要な フ ァ イ ルの入手」 を参照
し て く だ さ い。
Web タ ーゲ ッ ト の
チ ュ ー ト リ アル
28
PowerDynamo Web タ ーゲ ッ ト お よ び JSP Web サービ ス のチ ュ ー ト リ ア
ルを開始す る 際は、 以下の ツールが コ ン ピ ュ ー タ に イ ン ス ト ール さ れ
てい る こ と を事前に確認 し て く だ さ い。
•
EAServer 4.2 以降
•
PowerDynamo 3.6 以降 (PowerDynamo チ ュー ト リ アルの場合のみ)
•
Adaptive Server Anywhere 8.0 以降
•
PowerBuilder の Web タ ーゲ ッ ト 機能
•
Internet Explorer 6.0
PowerBuilder
第
2
部
ク ラ イ ア ン ト / サーバー ア プ リ
ケーシ ョ ンの構築
第 2 部は、 PowerBuilder の基本操作を示 し たチ ュ ー ト リ
アルです。 簡単なデー タ ベース ア プ リ ケーシ ョ ンの作成
の し かた を、 手順を追っ て説明 し ています。
レ ッ ス ン 1
PowerBuilder の起動
こ の レ ッ ス ン では、 PowerBuilder を起動 し て アプ リ ケーシ ョ ン を
開発す る ための必要事項について説明 し ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
ワ ーク ス ペース の新規作成
•
タ ーゲッ ト の作成
•
ア プリ ケ ーショ ン のア イ コ ン の指定
•
メ イ ン ウ ィ ン ド ウ のサイ ズ 変更
•
ア プリ ケ ーショ ン の実行
所要時間
約 15 分
PowerBuilder 入門
31
ワー ク スペースの新規作成
ワー ク スペースの新規作成
現在の学習個所
> ワーク ス ペース の新規作成
タ ーゲッ ト の作成
ア プ リ ケーシ ョ ン のア イ コ ン の指定
メ イ ン ウィ ン ド ウのサイ ズ変更
ア プ リ ケーシ ョ ン の実行
ワ ー ク ス ペー ス は、 PowerBuilder の タ ーゲ ッ ト を構築、 配置、 デバ ッ
グ、 実行す る 場所です。 1 つの ワ ー ク ス ペー ス 内に複数の タ ーゲ ッ ト
( こ のチ ュ ー ト リ アルの第 3 部で取 り 上げてい る Web タ ーゲ ッ ト も 含
む) を構築で き ます。
まず、 PowerBuilder を起動 し て、 新規 ワー ク スペース を作成 し ます。
チ ュ ー ト リ アルをは じ める前に
イ ン ス ト ール マニ ュ アルには最新の情報が記載 さ れてい ます。 チ ュ ー
ト リ アルをは じ め る 前に必ず目を通す よ う に し て く だ さ い。 チ ュ ー ト
リ アルを完了す る のに必要な フ ァ イ ルがすべて揃っ てい る こ と を確認
す る には、 27 ページの「 チュ ート リ ア ルのセッ ト ア ッ プ」 を参照 し て
く だ さ い。
1
Sybase¥PowerBuilder 9.0 のパス内の PowerBuilder ア イ コ ン
(PB90J.EXE を表す) を ダブルク リ ッ ク し ます。
または
Windows の [ス タ ー ト ] メ ニ ュ ーから [プ ログ ラム| Sybase |
PowerBuilder 9.0 | PowerBuilder 9.0] を選択 し ます。
PowerBuilder へよ う こ そダ イ ア ログボ ッ ク スが表示 さ れた場合
こ のダ イ ア ロ グ ボ ッ ク ス が PowerBuilder 起動のたびに表示 さ れな
い よ う に す る に は、 [次 回 か ら こ の ウ ィ ン ド ウ を 表 示 し な い]
チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。PowerBuilder セ ッ シ ョ ン を開始
し て [ こ の ウ ィ ン ド ウ を閉 じ る] を ク リ ッ ク す る たびに、 最近使
用 さ れた ワー ク スペース が ロ ー ド さ れ る よ う にす る には、 [ス タ ー
ト 時に前回使用 し た ワ ー ク ス ペー ス を ロ ー ド す る] チ ェ ッ ク ボ ッ
ク ス を オ ンに し ます。
PowerBuilder 開発環境が表示 さ れます。
32
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
マシ ン上で初めて PowerBuilder を開いた場合は、 シ ス テ ム ツ リ ー
内に最上位エ ン ト リ し か表示 さ れ ま せん。 こ れは、 現在 ど の ワ ー
ク ス ペー ス も 開いていない と い う こ と です。 開いてい る ワ ー ク ス
ペース があれば、 シ ス テ ム ツ リ ーの内部に タ ーゲ ッ ト お よ びオブ
ジ ェ ク ト が表示 さ れ ます。
2
[ フ ァ イル] メ ニ ュ ーから [新規作成] を選択 し ます。
または
パワーバーの [新規作成] ボ タ ン を ク リ ッ ク し ます。
新規作成 ダ イ ア ロ グ ボ ッ ク ス の [ ワー ク スペース] ページが表示
さ れ ます。
PowerBuilder 入門
33
ワー ク スペースの新規作成
新規作成 ダ イ ア ログボ ッ ク スに、 さ ま ざ まなページが表示 さ れた場合
新規作成 ダ イ ア ロ グ ボ ッ ク ス では、 前回ダ イ ア ロ グ を閉 じ た と き
に使用 し てい た タ ブ ページが表示 さ れ ま す。 こ の ス テ ッ プでは、
[ワ ー ク スペース] タ ブ を ク リ ッ ク し て [ ワー ク スペース] ページ
が表示 さ れ る か ど う か を確認 し ます。
3
新規作成 ダ イ ア ログボ ッ ク スの [ワー ク スペース] ページか ら 「ワー ク
スペース」 を選択 し ます。
[OK] を ク リ ッ ク し ます。
新 し い ワー ク スペース ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
4
Tutorial フ ォルダに移動 し ます。
Tutorial フ ォ ルダは、 PowerBuilder 9.0 フ ォ ルダの直下にあ り ます。
5
[フ ァ イル名] テキス ト ボ ッ ク スに 「MyWorkspace」 と 入力 し ます。
[保存] を ク リ ッ ク し ます。
新 し い ワ ー ク スペース ダ イ ア ロ グ ボ ッ ク ス が閉 じ 、 作成 し た ワー
ク ス ペー ス が シ ス テ ム ツ リ ー内の最初の項目 と し て表示 さ れ ま
す。
34
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
タ ーゲ ッ ト の作成
現在の学習個所
ワーク スペースの新規作成
> タ ーゲッ ト の作成
ア プ リ ケーシ ョ ン のア イ コ ン の指定
メ イ ン ウィ ン ド ウのサイ ズ変更
ア プ リ ケーシ ョ ン の実行
こ こ では、 テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド を使用 し て、 新
規 タ ーゲ ッ ト を作成 し ま す。 選択 さ れた内容に基づいて、 テ ン プ レー
ト アプ リ ケーシ ョ ン ウ ィ ザー ド では、 コ ーデ ィ ン グ済みの イ ベン ト 、
メ ニ ュー、 ウ ィ ン ド ウ 、 お よ びアプ リ ケーシ ョ ン オブジ ェ ク ト と ユー
ザ オブジ ェ ク ト が作成 さ れ ます。
1
[ フ ァ イル] メ ニ ュ ーから [新規作成] を選択 し 、 [ タ ーゲ ッ ト ] タ ブ を ク
リ ッ ク し ます。
または
シ ス テム ツ リ ー内の MyWorkspace を 右 ク リ ッ ク し 、 ポ ッ プ ア ッ プ メ
ニ ュ ーの [新規作成] を選択 し て、 [ タ ーゲ ッ ト ] タ ブ を ク リ ッ ク し ます。
新規作成 ダ イ ア ロ グ ボ ッ ク ス の [ タ ーゲ ッ ト ] ページが表示 さ れ
ます。
2
[テ ン プ レー ト ア プ リ ケーシ ョ ン] ア イ コ ン を選択 し て、 [OK] を ク リ ッ
ク し ます。
テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド が表示 さ れます。 ほ と
ん ど の ウ ィ ザー ド では、 最初のページで ウ ィ ザー ド の使用目的が
説明 さ れます。 ウ ィ ザー ド の使用中は、 〔F1〕 を押す こ と でたいて
いのフ ィ ール ド のヘルプ情報を表示で き ます。
PowerBuilder 入門
35
タ ーゲ ッ ト の作成
3
[次へ] を 2 回 ク リ ッ ク し て、 新規ア プ リ ケーシ ョ ン と ラ イ ブ ラ リ の指定
ページ を表示 し ます。
4
[ア プ リ ケーシ ョ ン名] テキス ト ボ ッ ク スに 「pbtutor」 と 入力 し ます。
こ のアプ リ ケーシ ョ ン名を使用す る ラ イ ブ ラ リ お よ び タ ーゲ ッ ト
には、 ウ ィ ザー ド に よ り 自動的に フ ァ イ ル名が割 り 当て ら れます。
ラ イ ブ ラ リ には PBL 拡張子が、 タ ーゲ ッ ト には PBT 拡張子が割 り
当て ら れます。
5
[次へ] を ク リ ッ ク し ます。
[アプ リ ケーシ ョ ン の種類の指定] ページが表示 さ れ ま す。 [マ イ
ク ロ ヘルプ付 き MDI アプ リ ケーシ ョ ン] ラ ジオボ タ ン が選択 さ れ
てい ま す。 MDI テ ン プ レ ー ト アプ リ ケーシ ョ ン を作成す る ので、
こ の ラ ジオボ タ ンの選択を変更す る 必要はあ り ません。
MDI と は
MDI は、 マルチ ド キ ュ メ ン ト イ ン タ フ ェ ース の略称です。MDI ア
プ リ ケーシ ョ ン では、 アプ リ ケーシ ョ ン用の メ イ ン ウ ィ ン ド ウ の
こ と を MDI フ レーム と 呼びます。 MDI フ レーム メ ニ ュ ー バーを
使用 し て、 さ ら にシー ト ウ ィ ン ド ウ と い う 、 フ レーム ウ ィ ン ド ウ
の内部に表示 さ れ る ウ ィ ン ド ウ を開 く こ と も で き ます。
6
[次へ] を 4 回 ク リ ッ ク し て、 [シー ト 名の指定] ページ を表示 し ます。
こ のチ ュ ー ト リ アルでは、 アプ リ ケーシ ョ ン の種類、 ラ イ ブ ラ リ
探索パ ス、 フ レ ー ム と フ レ ー ム メ ニ ュ ー名、 シー ト メ ニ ュ ー と
シー ト 管理サービ ス名、 お よ び MDI ベース シー ト 名に、 デフ ォ ル
ト 値を その ま ま使用 し ます。
[次へ] を ク リ ッ ク し すぎた場合
ウ ィ ザー ド の [戻 る ] ボ タ ン を ク リ ッ ク すれば、 目的の ウ ィ ザー
ド ページに戻 る こ と がで き ます。
7
36
[シー ト 名の指定] ページ で、 [シー ト 1] テキス ト ボ ッ ク スに
「w_customers」、 [シー ト 2] テキス ト ボ ッ ク スに 「w_products」 と
入力 し 、 [シー ト 3] テキス ト ボ ッ ク ス を空白に し ます。
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
デ フ ォ ル ト のベー ス シー ト (w_pbtutor_basesheet) を 基に 2 つの
ウ ィ ン ド ウ が作成 さ れ ます。 1 つが顧客情報用、 も う 1 つが商品管
理用です。 例外処理の レ ッ ス ン で、 3 つ目のシー ト ウ ィ ン ド ウ を
追加 し ます。
8
[次へ] を ク リ ッ ク し ます。
シー ト 1 の表示名 と し て 「顧客情報」 と 入力 し ます。
シー ト 2 の表示名 と し て 「商品管理」 と 入力 し ます。
こ こ で入力 し た名前は、 それぞれのシー ト ウ ィ ン ド ウ の タ イ ト ル
バーに表示 さ れます。
PowerBuilder 入門
37
タ ーゲ ッ ト の作成
9
[次へ] を 2 回 ク リ ッ ク し ます。
バージ ョ ン情報ウ ィ ン ド ウ お よ びツールバー ウ ィ ン ド ウ の名前を
変更す る 必要はあ り ません。
10 [接続の指定] ページ で 「な し 」 を選択 し ます。
接続オブジ ェ ク ト は後で追加 し ます。
11 [次へ] を 2 回 ク リ ッ ク し て、 [ア プ リ ケーシ ョ ンの作成準備完了] ページ
を表示 し ます。
プ ロ ジ ェ ク ト は後で作成 し ます。
最後の ウ ィ ザー ド ページが表示 さ れ ま す。 ウ ィ ザー ド ページに、
現在の選択内容が リ ス ト さ れ ま す。 も う 一度見直 し て、 必要で あ
れば [戻 る ] ボ タ ン を使用 し て前のページに戻 り 、 変更を行 う こ
と も で き ます。
12 [To-Do リ ス ト の作成] チ ェ ッ ク ボ ッ ク スがオ ンにな っ ている こ と を確認
し ます。
[完了] ボ タ ン を ク リ ッ ク し ます。
38
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
ア プ リ ケ ー シ ョ ン ウ ィ ザ ー ド は pbtutor.pbt タ ー ゲ ッ ト お よ び
pbtutor.pbl ラ イ ブ ラ リ を作成 し 、 新 し い pbtutor アプ リ ケーシ ョ ン
を デ フ ォ ル ト ア プ リ ケーシ ョ ン と し て設定 し ま す。 シ ス テ ム ツ
リ ーを展開す る と 、 テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド で
作成 さ れたオブジ ェ ク ト をすべて表示で き ます。
PowerBuilder 入門
39
ア プ リ ケーシ ョ ンのア イ コ ンの指定
ア プ リ ケーシ ョ ンのア イ コ ンの指定
現在の学習個所
ワーク ス ペース の新規作成
タ ーゲッ ト の作成
> ア プ リ ケーシ ョ ン のア イ コ ン の指定
メ イ ン ウィ ン ド ウのサイ ズ変更
ア プ リ ケーシ ョ ン の実行
こ の ス テ ッ プでは、 アプ リ ケーシ ョ ン のア イ コ ン を指定 し ま す。 ア イ
コ ン は、 実行中にアプ リ ケーシ ョ ン を最小化 し た と き に ワ ー ク スペー
ス に表示 さ れま す。 実行フ ァ イ ルを作成す る と 、 ア イ コ ンは自動的に
設定 さ れ ます。 ア イ コ ン の指定は、 アプ リ ケーシ ョ ン ペ イ ン タ のプ ロ
パテ ィ ビ ュ ーか ら 行い ます。
1
シ ス テム ツ リ ーの pbtutor ア プ リ ケーシ ョ ン項目を ダ ブル ク リ ッ ク し ま
す。
または
pbtutor ア プ リ ケーシ ョ ン項目を右ク リ ッ ク し て、ポ ッ プ ア ッ プ メ ニ ュ ー
から [編集] を選択 し ます。
pbtutor アプ リ ケーシ ョ ン項目は、 テ ン プ レー ト アプ リ ケーシ ョ ン
ウ ィ ザー ド で作成 し た pbtutor.pbl お よ び pbtutor タ ーゲ ッ ト オブ
ジ ェ ク ト の下にあ り ます。 アプ リ ケーシ ョ ン ペ イ ン タ に、 アプ リ
ケーシ ョ ン オブジ ェ ク ト の さ ま ざ ま な ビ ュ ーが表示 さ れます。
2
40
ア プ リ ケーシ ョ ン ペ イ ン タ にプ ロパテ ィ ビ ュ ーが表示 さ れている こ と を
確認 し て く だ さ い。
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
プ ロ パテ ィ ビ ューが開いていない場合は、 アプ リ ケーシ ョ ン ペ イ
ン タ の メ ニ ュ ー バーか ら [ビ ュ ー|プ ロ パテ ィ ] を選択 し て開 く
こ と がで き ます。プ ロ パテ ィ ビ ュ ーが開いてい る場合は、メ ニ ュ ー
項目がグ レー表示 さ れ ます。
3
プ ロパテ ィ ビ ュ ーの [付加的な プ ロパテ ィ ] ボ タ ン を ク リ ッ ク し ます。
タ ブ付 き のアプ リ ケーシ ョ ン プ ロ パテ ィ シー ト が表示 さ れます。
4
[ア イ コ ン] タ ブ を ク リ ッ ク し ます。
5
[ア イ コ ンの参照] を ク リ ッ ク し ます。
Tutorial デ ィ レ ク ト リ が開き ます。
6
tutorial.ico フ ァ イルを選択 し ます。
[開 く ] を ク リ ッ ク し ます。
拡張子 ico が見つから ない場合
Windows エ ク ス プ ロ ー ラ の オ プ シ ョ ン ダ イ ア ロ グ ボ ッ ク ス
(Windows 98 では フ ォ ルダ オプシ ョ ン ダ イ ア ロ グ ボ ッ ク ス) で、
[登録 さ れてい る フ ァ イ ルの拡張子は表示 し ない] チ ェ ッ ク ボ ッ ク
ス をオ ン に し た場合、 ICO フ ァ イ ルの拡張子は表示 さ れません。
PowerBuilder 入門
41
ア プ リ ケーシ ョ ンのア イ コ ンの指定
ア プ リ ケ ー シ ョ ン プ ロ パ テ ィ シ ー ト の [ア イ コ ン] ペー ジ に
チ ュー ト リ アル ア イ コ ンが表示 さ れます。
7
42
[OK] を ク リ ッ ク し ます。
ペ イ ン タ バー 1 の [保存] ボ タ ン を ク リ ッ ク するか、 [フ ァ イル|上書き
保存] を選択 し ます。
ペ イ ン タ バー 1 の [閉 じ る] ボ タ ン を ク リ ッ ク するか、 [フ ァ イル|閉 じ
る] を選択 し ます。
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
メ イ ン ウ ィ ン ド ウのサイ ズ変更
現在の学習個所
ワーク スペースの新規作成
タ ーゲッ ト の作成
ア プ リ ケーシ ョ ン のア イ コ ン の指定
> メ イ ン ウィ ン ド ウのサイ ズ変更
ア プ リ ケーシ ョ ン の実行
こ こ では、 アプ リ ケーシ ョ ンの メ イ ン ウ ィ ン ド ウ のサ イ ズ を変更 し ま
す。 アプ リ ケーシ ョ ン を実行す る と 、 指定 し た位置に指定 し たサ イ ズ
で メ イ ン ウ ィ ン ド ウ が表示 さ れます。
1
シ ス テム ツ リ ーで w_pbtutor_frame を ダ ブル ク リ ッ ク し ます。
アプ リ ケーシ ョ ン の フ レーム ウ ィ ン ド ウ が開 き ます。
2
プ ロパテ ィ ビ ュ ーの [全般] ページ で [中央] チ ェ ッ ク ボ ッ ク ス を オン
に し ます。
こ れで、 アプ リ ケーシ ョ ン を実行す る と 、 フ レーム ウ ィ ン ド ウ が
中央に表示 さ れ ます。
PowerBuilder 入門
43
メ イ ン ウ ィ ン ド ウのサイ ズ変更
3
[ウ ィ ン ド ウの状態] ド ロ ッ プ ダウン リ ス ト ボ ッ ク ス を下にス ク ロール し
て、 「normal!」 を選択 し ます。
プ ロパテ ィ ビ ュ ーの外観が異な っ ている場合
プ ロ パ テ ィ ビ ュ ーの ラ ベルの位置 を 変更す る には、 プ ロ パ テ ィ
ビ ュ ーを右 ク リ ッ ク し 、 ポ ッ プア ッ プ メ ニ ュ ーか ら 変更後の ラ ベ
ル位置を選択 し ます。 (上の図の よ う に) 全フ ィ ール ド の左側、 ま
たはテ キ ス ト フ ィ ール ド 上部 と チ ェ ッ ク ボ ッ ク ス の右側に ラ ベル
を配置す る 2 通 り の表示がで き ます。
4
プ ロパテ ィ ビ ュ ーの [その他] タ ブ を ク リ ッ ク し ます。
[幅] テキス ト ボ ッ ク スに 「3000」、 [高 さ ] テキス ト ボ ッ ク スに 「2400」
と 入力 し ます。
〔Tab〕 キーを押 し ます。
レ イ ア ウ ト ビ ュ ー内にあ る長方形の ウ ィ ン ド ウ のサ イ ズが変更 さ
れ ます。 入力す る値は、 PowerBuilder 単位系 (PBU) です。
5
メ ニ ュ ー バーか ら [フ ァ イル|閉 じ る] を選択 し ます。
変更内容を保存する よ う に要求 さ れた ら 、 [はい] ボ タ ン を ク リ ッ ク し ま
す。
ウ ィ ン ド ウ ペ イ ン タ が閉 じ ます。
44
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
次の ス テ ッ プでは、 アプ リ ケーシ ョ ン を実行 し ま す。 アプ リ ケー
シ ョ ン を実行す る と 、 フ レーム ウ ィ ン ド ウ が中央に表示 さ れ、 指
定 し たサ イ ズにな り ます。
PowerBuilder 入門
45
ア プ リ ケーシ ョ ンの実行
ア プ リ ケーシ ョ ンの実行
現在の学習個所
ワーク ス ペース の新規作成
タ ーゲッ ト の作成
ア プ リ ケーシ ョ ン のア イ コ ン の指定
メ イ ン ウィ ン ド ウのサイ ズ変更
> ア プ リ ケーシ ョ ン の実行
こ の ス テ ッ プでは、 アプ リ ケーシ ョ ン を実行 し て、 それが ど の よ う に
動作す る のか を確認 し ま す。 こ の時点では、 アプ リ ケーシ ョ ン で実行
さ れ る 処理はあ ま り 多 く あ り ません。 アプ リ ケーシ ョ ン を実行す る こ
と で、テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド でアプ リ ケーシ ョ ン
を作成す る 際に自動的に生成 さ れ る ウ ィ ン ド ウ と メ ニ ュ ーを確認で き
ます。 こ の ウ ィ ン ド ウ と メ ニ ューを後で変更 し ます。
1
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
MDI フ レーム ウ ィ ン ド ウ が画面に最大化表示 さ れます。 ウ ィ ザー
ド を 使用 し て作成 し たすべて の MDI ア プ リ ケーシ ョ ン には、 メ
ニ ュ ー バー と ツールバーがあ り 、 一部の項目はすでに コ ーデ ィ ン
グ さ れてい ます。
2
[フ ァ イル|新規作成|顧客情報] を選択 し ます。
アプ リ ケーシ ョ ン に よ っ て シー ト ウ ィ ン ド ウ が開 き ま す。 シー ト
1 のテ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド で入力 し た表示名
が タ イ ト ル バーに表示 さ れます。 シー ト ウ ィ ン ド ウ の タ イ ト ルの
後ろ には、 表示中の ウ ィ ン ド ウ の イ ン ス タ ン ス を示す番号が付 き
ます。
46
PowerBuilder
レ ッ スン 1
PowerBuilder の起動
ウ ィ ン ド ウの タ イ ト ル バーの数字について
「1」 と い う 数字が ウ ィ ン ド ウ タ イ ト ルの後に表示 さ れ る のは、 開
いてい る w_customers のシー ト ウ ィ ン ド ウ の最初の イ ン ス タ ン ス
であ る こ と を示すためです。 タ イ ト ル バーに イ ン ス タ ン ス番号を
追 加 す る ス ク リ プ ト は、 ベ ー ス シ ー ト ウ ィ ン ド ウ で あ る
w_master_detail_ancestor の ue_postopen イ ベン ト に記述 さ れてい ま
す。
3
[ フ ァ イル|新規作成|商品管理] を選択 し ます。
2 つ目のアプ リ ケーシ ョ ン シー ト ウ ィ ン ド ウ が表示 さ れます。
4
[ウ ィ ン ド ウ|縦に並べて表示] を選択 し ます。
2 つのシー ト ウ ィ ン ド ウ が MDI フ レーム内で上下に並べて表示 さ
れ ます。 ア ク テ ィ ブな方が上に配置 さ れます。
5
メ ニ ュ ー バーから [フ ァ イル|ツールバー] を選択 し ます。
ツールバー ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
6
ツールバー ダ イ ア ログボ ッ ク スの [浮動] を選択 し ます。
MDI フ レーム内で ツールバーが浮動状態にな り ます。 ツールバー
ダ イ ア ロ グ ボ ッ ク ス の背後に浮動ツールバーが隠れてい る 場合 も
あ り ます。
7
[上端] を選択 し ます。
フ レーム の上部にツールバーが再配置 さ れ ます。
PowerBuilder 入門
47
ア プ リ ケーシ ョ ンの実行
8
[完了] を ク リ ッ ク し て、 ツールバー ダ イ ア ログボ ッ ク ス を閉 じ ます。
9
[フ ァ イル|終了] を選択 し ます。
アプ リ ケーシ ョ ンが閉 じ 、 PowerBuilder 開発環境に戻 り ます。
次に PowerBuilder を起動す る と き 、 前回の PowerBuilder 終了時の
状態で ワ ー ク ス ペー ス お よ びペ イ ン タ を開 く には、 以下の よ う に
操作 し ます。
10
メ ニ ュ ー バーか ら [ツール|シス テム オプ シ ョ ン] を選択 し 、 [ワー ク ス
ペース] タ ブ を ク リ ッ ク し ます。
11 [開始時にワー ク スペース を再度開 く ] お よび [ワー ク スペース を開 く 時
にペ イ ン タ を再ロー ド する] チ ェ ッ ク ボ ッ ク スがオ ンにな っ ている こ と を
確認 し ます。
[OK] を ク リ ッ ク し ます。
こ れで PowerBuilder を起動す る と 、 終了時に開いていた ワ ー ク ス
ペ ー ス お よ び ペ イ ン タ が 開 く よ う に な り ま す。 終 了 時 に
PowerBuilder 内で コ ーデ ィ ン グ し ていた場合は、最後に コ ーデ ィ ン
グ し ていた ス ク リ プ ト が開 き 、 最後に編集 し た行位置に カー ソ ル
が設定 さ れ ます。
48
PowerBuilder
レ ッ ス ン 2
PowerBuilder の環境のカ ス タ マ イズ
レ ッ ス ン 2 では、 PowerBuilder の環境を よ く 理解 し ワ ー ク ス ペー
ス を カ ス タ マ イ ズす る ための必要事項について説明 し ま す。 レ ッ
ス ン 2 は必須では な い ので、 こ の レ ッ ス ン を 省略 し た い場合は
レ ッ ス ン 3 に飛んで も か ま い ません。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
シ ス テ ム ツ リ ー ウ ィ ン ド ウ の操作
•
オブジ ェ ク ト のオープン
•
ビ ュ ーの操作
•
ツ ールバーのセッ ト ア ッ プ
所要時間
約 10 分
PowerBuilder 入門
49
システム ツ リ ー ウ ィ ン ド ウの操作
シ ス テム ツ リ ー ウ ィ ン ド ウの操作
現在の学習個所
> シ ステ ム ツ リ ー ウィ ン ド ウの操作
オブ ジ ェ ク ト のオープ ン
ビ ュ ーの操作
ツ ールバーのセッ ト ア ッ プ
シ ス テ ム ツ リ ーの [ ワー ク スペース] ページに、 作業の概要が表示 さ
れます (シ ス テ ム ツ リ ーのほかのページは Web タ ーゲ ッ ト 関連の も の
で、 PowerScript タ ーゲ ッ ト と は無関係です) 。 ワー ク スペース と その
内部のオブジ ェ ク ト を展開す る と 、 タ ーゲ ッ ト の内容お よ び構造を確
認で き ます。
ワー ク スペース 内のオブジ ェ ク ト は、 すべて直接操作で き ま す。 た と
えば、 シ ス テ ム ツ リ ーのポ ッ プア ッ プ メ ニ ュ ーを使用 し て、 ウ ィ ン ド
ウ の編集、 実行、 検索、 再生成な ど を行 う こ と がで き ます。 こ の ス テ ッ
プでは、 シ ス テ ム ツ リ ーを別の位置に移動 し た り 、 閉 じ た り 開いた り
す る練習を し ます。 ド ラ ッ グ バーを使用す る と 、 メ イ ン ウ ィ ン ド ウ を
基準にシ ス テ ム ツ リ ーを別の位置に移動で き ます。 シ ス テ ム ツ リ ー、
ク リ ッ プ ウ ィ ン ド ウ 、 お よ び出力ウ ィ ン ド ウ の並べ方を変更す る こ と
も で き ます。
1
パワーバーの [出力] ボ タ ン を ク リ ッ ク し ます。 出力ウ ィ ン ド ウが表示 さ
れます。
2
メ ニ ュ ー バーか ら [ツール|シ ス テム オプ シ ョ ン] を選択 し ます。
[全般] ページの [水平 ド ッ ク ウ ィ ン ド ウを最大幅にする] ボ タ ン を ク リ ッ
ク し てオ フ に し ます。
メ イ ン ウ ィ ン ド ウ の上部か ら 下部ま で、 シ ス テ ム ツ リ ーお よ び ク
リ ッ プ ウ ィ ン ド ウ が表示 さ れます。
3
シ ス テム ツ リ ーの上部で、 ド ラ ッ グ バーを ク リ ッ ク し てマウス ボ タ ン を
押 し た状態に し ます。
シ ス テム ツ リ ーを ド ラ ッ グ し て、 ペ イ ン タ ワー ク スペースの上部、 下部、
または右の方へ移動 し ます。
ド ラ ッ グ を開始す る と 、 シ ス テ ム ツ リ ーの周囲にグ レーの四角形
が表示 さ れ ま す。 マ ウ ス ボ タ ン を放 し た と き の範囲が、 シ ス テ ム
ツ リ ーが占め る 領域 と な り ます。
50
PowerBuilder
レ ッ スン 2
4
PowerBuilder の環境のカ ス タ マ イズ
グ レーの矩形アウ ト ラ イ ンがシ ス テム ツ リ ーを表示する位置に移動 し た
ら、 マウスのボ タ ン を放 し ます。
新 し い場所にシ ス テ ム ツ リ ーが表示 さ れます。
5
パワーバーの [シ ステム ツ リ ー] ボ タ ン を ク リ ッ ク し て、シ ス テム ツ リ ー
を閉 じ ます。
シ ス テ ム ツ リ ーが閉 じ た後 も 、 現在の ワ ー ク スペース は開いた ま
ま です。 シ ス テ ム ツ リ ーを閉 じ る と 、 ペ イ ン タ の ワー ク スペース
ビ ュ ーの スペース が増大 し ます。
6
パワーバーの [シ ス テム ツ リ ー] ボタ ン を ク リ ッ ク し て、 も う 一度シ ステ
ム ツ リ ーを開き ます。
7
パワーバー上にある各ウ ィ ン ド ウ用のボ タ ン を ク リ ッ ク するか、各ウ ィ ン
ド ウの隅にある小 さ な x を ク リ ッ ク し て、 ク リ ッ プ ウ ィ ン ド ウおよび出
力ウ ィ ン ド ウ を閉 じ ます。
8
MyWorkspace を右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーか ら [閉 じ る]
を選択 し ます。
ワ ー ク スペース が閉 じ ます。 シ ス テ ム ツ リ ーに ワ ー ク スペース が
表示 さ れていない状態にな り ます。
PowerBuilder 入門
51
オブ ジ ェ ク ト のオープ ン
オブ ジ ェ ク ト のオープ ン
現在の学習個所
シ ステ ム ツ リ ー ウィ ン ド ウの操作
> オブ ジ ェ ク ト のオープ ン
ビ ュ ーの操作
ツ ールバーのセッ ト ア ッ プ
こ こ では、テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド に よ っ て作成 さ
れたオブジ ェ ク ト を開 き ます。
52
1
メ ニ ュ ー バーか ら [フ ァ イル|最近使用 し たワー ク スペース] を選択 し 、
カ スケー ド メ ニ ュ ーか ら 「MyWorkspace」 を選択 し ます。
2
シ ス テム ツ リ ーで、 MyWorkspace、 pbtutor タ ーゲ ッ ト 、 および
pbtutor.pbl を展開 し ます。
3
pbtutor ア プ リ ケーシ ョ ン タ ーゲ ッ ト を ダ ブル ク リ ッ ク し ます。
または
pbtutor ア プ リ ケーシ ョ ン オブ ジ ェ ク ト を右 ク リ ッ ク し て、ポ ッ プ ア ッ プ
メ ニ ュ ーから [編集] を選択 し ます。
PowerBuilder
レ ッ スン 2
PowerBuilder の環境のカ ス タ マ イズ
アプ リ ケーシ ョ ン ペ イ ン タ に、pbtutor アプ リ ケーシ ョ ン オブジ ェ
ク ト の さ ま ざ ま な ビ ュ ーが表示 さ れ ま す。 ビ ュ ーの レ イ ア ウ ト 構
成は、 ユーザに よ っ て異な り ま す。 デフ ォ ル ト の レ イ ア ウ ト を表
示す る には、[ビ ュ ー|レ イ ア ウ ト | (デフ ォ ル ト )] を選択 し ます。
デフ ォ ル ト のアプ リ ケーシ ョ ン ペ イ ン タ の レ イ ア ウ ト に、 2 つの
タ ブ付 き ペ イ ン の ス タ ッ ク が表示 さ れ ま す。 左の ス タ ッ ク には ス
ク リ プ ト ビ ュ ー ([Open] タ ブが選択 さ れてお り 、 アプ リ ケーシ ョ
ン オ ブ ジ ェ ク ト の Open イ ベ ン ト の ス ク リ プ ト が表示 さ れ て い
る )、 イ ベン ト リ ス ト ビ ュー、 関数 リ ス ト ビ ュー、 お よ び イ ン ス
タ ン ス変数の宣言ビ ュ ーが含ま れてい ます。右の ス タ ッ ク には、プ
ロ パテ ィ ビ ュ ー、お よ び非ビ ジ ュ アル オブジ ェ ク ト リ ス ト ビ ュ ー
が含ま れてい ます。
4
ス ク リ プ ト ビ ュ ーで、 Open イ ベ ン ト の コ ー ド を確認 し ます。
こ の コー ド は、メ イ ン ウ ィ ン ド ウ を開 く ための コー ド で、ウ ィ ザー
ド で自動的に生成 さ れた も のです。 こ のチ ュ ー ト リ アルの後半で
こ の コー ド を修正 し ます。
PowerBuilder 入門
53
ビ ュ ーの操作
ビ ュ ーの操作
現在の学習個所
シ ステ ム ツ リ ー ウィ ン ド ウの操作
オブ ジ ェ ク ト のオープ ン
> ビ ュ ーの操作
ツ ールバーのセッ ト ア ッ プ
こ こ では、 PowerBuilder ペ イ ン タ ビ ュ ーの位置や外観の調整方法につ
いて学習 し ます。 メ ニ ュ ー バーの [ビ ュ ー] メ ニ ュ ーか ら ビ ューを選
択 し てペ イ ン タ の ワ ー ク スペース に追加で き ます。
種類が同 じ 複数の ビ ュ ーを追加 し 、 それ ら の ビ ュ ーを結合 し て下部に
選択 タ ブ を持つペ イ ン ス タ ッ ク を作成で き ます。 ペ イ ン タ の ワー ク ス
ペー ス内で ビ ュ ーやその隣の ビ ュ ーの周囲にあ る 分割バーをつかんで
ド ラ ッ グす る こ と で、 ビ ュ ーのサ イ ズ を変更で き ます。
こ こ では、 アプ リ ケーシ ョ ン ペ イ ン タ を使用 し て、 ペ イ ン タ ビ ュ ーの
外観を変え る 方法を実際に説明 し ま すが、 ど のペ イ ン タ において も 同
様にビ ュ ーに対す る 操作を行 う こ と がで き ます。
こ の練習では以下の操作を行い ます。
54
•
新規ス ク リ プト ビ ュ ーの追加
•
ビ ュ ーのタ イ ト ル バーの表示
•
ビ ュ ーの浮動化と 固定化
•
タ ブ付き ビ ュ ーの操作
•
ビ ュ ーのレ イ ア ウ ト 構成の保存
•
ビ ュ ー レ イ ア ウ ト 構成を 標準設定に戻す
PowerBuilder
レ ッ スン 2
PowerBuilder の環境のカ ス タ マ イズ
新規ス ク リ プ ト ビ ュ ーの追加
デフ ォ ル ト のアプ リ ケーシ ョ ン ペ イ ン タ の レ イ ア ウ ト には、 ス ク リ プ
ト ビ ュ ーが 2 つあ り ます。 ス ク リ プ ト ビ ュ ーの 1 つには、 アプ リ ケー
シ ョ ン オブジ ェ ク ト の イ ベン ト 用ス ク リ プ ト が表示 さ れます。 も う 1
つの ス ク リ プ ト ビ ュ ーには、オブジ ェ ク ト イ ン ス タ ン ス用に宣言 さ れ
た変数、 ま たはアプ リ ケーシ ョ ン全体に対 し て宣言 さ れた変数が表示
さ れ ます。 こ れ ら の ス ク リ プ ト ビ ュ ーは、 同一の タ ブ付 き ビ ュ ー (ペ
イ ン) の ス タ ッ ク 内に存在 し ます。
こ こ では、3 つ目の ス ク リ プ ト ビ ュ ー と し て、タ ブ付 き ペ イ ン の ス タ ッ
ク に含ま れない ビ ュ ーを追加 し ます。 ペ イ ン タ の レ イ ア ウ ト には複数
の ス ク リ プ ト ビ ュ ー を 追加 で き ま す が、 同一 ス ク リ プ ト を 複数 の
ビ ュ ーで開 く こ と はで き ません。
1
メ ニ ュ ー バーから [ビ ュ ー|ス ク リ プ ト ] を選択 し ます。
新規 ス ク リ プ ト ビ ュ ーが表示 さ れ ま す。 こ の ス ク リ プ ト ビ ュ ー
は、 タ ブ付 き ペ イ ン の ス タ ッ ク には追加 さ れ ま せん。 こ の ス ク リ
プ ト ビ ュ ーの最初の ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク ス 内には ア プ
リ ケーシ ョ ン オブジ ェ ク ト が リ ス ト さ れ ま すが、 2 番目の ド ロ ッ
プダ ウ ン リ ス ト ボ ッ ク ス内は空です。
既存の ス ク リ プ ト ビ ュ ーに Open イ ベン ト が表示 さ れてい る 場合、
新規ス ク リ プ ト ビ ュ ーは空にな り ます。 既存の ス ク リ プ ト ビ ュ ー
に Open イ ベ ン ト が表示 さ れ て い な い 場合は、 新規 ス ク リ プ ト
ビ ュ ーに Open イ ベン ト が表示 さ れます。
PowerBuilder 入門
55
ビ ュ ーの操作
2
2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スから Close イ ベン ト を選択 し ま
す。
別の ス ク リ プ ト ビ ュ ーがすでに Close イ ベン ト を開いてい る 場合
は、 PowerBuilder ス テー タ ス バー内にエ ラ ー メ ッ セージが表示 さ
れ ます。
ビ ュ ーの タ イ ト ル バーの表示
こ こ では、ビ ュ ーの タ イ ト ル バーをペ イ ン タ ワー ク スペース の背景に
固定 さ せて表示 し ます。 固定 さ れていない タ イ ト ル バーが表示 さ れ る
のは、 ビ ュ ーの上端近 く にマ ウ ス ポ イ ン タ を置いた ま ま に し た場合だ
けです。
1
先ほど追加 し た新規ス ク リ プ ト ビ ュ ーの最上部にマウス ポ イ ン タ を移動
し ます。
ビ ュ ーの タ イ ト ル バーが表示 さ れ ま す。 タ イ ト ル バーの左端に
は、 [プ ッ シ ュ ピ ン] ボ タ ン、 右端には [最大化] ボ タ ン お よ び
[閉 じ る ] ボ タ ン が あ り ま す。 タ イ ト ル バーの左端に あ る [プ ッ
シ ュ ピ ン] ボ タ ンの横に、 ビ ューの名前が表示 さ れ ます。
2
タ イ ト ル バーの [プ ッ シ ュ ピ ン] ボ タ ン を ク リ ッ ク し ます。
または
ビ ュ ー タ イ ト ル バーを右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーか ら [ タ
イ ト ルバー固定] を選択 し ます。
[プ ッ シ ュ ピ ン] ボ タ ン と [ タ イ ト ルバー固定] メ ニ ュ ー項目は、
ク リ ッ ク す る たびにオ ン と オ フ が切 り 替わ り ま す。 [プ ッ シ ュ ピ
ン] ボ タ ン ま たは [ タ イ ト ルバー固定] を も う 一度 ク リ ッ ク す る
と 、 ビ ュ ー タ イ ト ル バーが固定状態か ら 解放 さ れます。
ビ ュ ーの浮動化 と 固定化
こ の ス テ ッ プでは、 ペ イ ン タ の ワ ー ク スペー ス で ビ ュ ーの浮動化 と 固
定化 を 行い ま す。 ビ ュ ー を 浮動化す る と 、 ペ イ ン タ フ レ ー ム の外に
ビ ューを移動で き る よ う にな り ます。
1
56
浮動化する非ス タ ッ ク ビ ュ ーの タ イ ト ル バーを右 ク リ ッ ク し ます。
または
タ ブ付き ペ イ ンのス タ ッ ク で、 ビ ュ ーの タ ブ を右ク リ ッ ク し ます。
PowerBuilder
レ ッ スン 2
PowerBuilder の環境のカ ス タ マ イズ
タ イ ト ル バーが固定 さ れていない場合は、 マ ウ ス ポ イ ン タ を タ イ
ト ル バー領域の上に移動 し 、 タ イ ト ル バーが表示 さ れてか ら 右 ク
リ ッ ク し ます。
2
ポ ッ プ ア ッ プ メ ニ ュ ーで [浮動] を ク リ ッ ク し ます。
ビ ュ ーが浮動状態にあ る 場合は、 [浮動] メ ニ ュー項目は選択で き
ません。 ビ ューが固定状態にあ る場合は、 [固定] メ ニ ュ ー項目は
選択で き ません。
3
画面の周囲にビ ュ ーを ド ラ ッ グ し ます。
浮動型ビ ュ ーは、 ペ イ ン タ の ワ ー ク ス ペー ス の外に も 配置で き ま
す。
4
浮動型ビ ュ ーの タ イ ト ル バーを右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [固定] を ク リ ッ ク し ます。
ビ ュ ーが元の位置に戻 り ます。
タ ブ付き ビ ュ ーの操作
こ の ス テ ッ プでは、 タ ブ付 きペ イ ン の ス タ ッ ク か ら ビ ューを切 り 離 し 、
独立 し た ビ ュ ーにす る 作業を行い ま す。 その後で、 その ビ ュ ーを元の
ス タ ッ ク に戻 し 、 ス タ ッ ク 内のビ ュ ーの位置を変更 し ます。
1
[関数 リ ス ト ] タ ブ上でマウス ボ タ ン を押 し たま まに し ます。
ア プ リ ケーシ ョ ン ペ イ ン タ の 2 つのデ フ ォ ル ト ス タ ッ ク を区切る分割
バー上に、 タ ブ を ド ラ ッ グ し ます。
マウス ボ タ ン を放 し ます。
マ ウ ス ボ タ ン を放す と 、 関数 リ ス ト ビ ューが ス タ ッ ク か ら 切 り 放
さ れ ま す。 タ ブ を かな り 遠 く の位置に ド ラ ッ グ し て、 プ ロ パテ ィ
ビ ュ ーお よ び非ビ ジ ュ アルオブジ ェ ク ト リ ス ト の右ス タ ッ ク 上で
マ ウ ス ボ タ ン を放す と 、 関数 リ ス ト がその ス タ ッ ク の一部にな り
ます。
ビ ュ ーを ス タ ッ クか ら浮動 さ せる別の方法
〔Ctrl〕 ま たは 〔Shift〕 を押 し た状態で ス タ ッ ク か ら タ ブ付 き ペ イ
ン の タ ブの部分を ド ラ ッ グす る と 、 そのペ イ ン が浮動型ビ ュ ーに
な り ます。
PowerBuilder 入門
57
ビ ュ ーの操作
2
[関数 リ ス ト ] タ イ ト ル バー上でマウス ボ タ ン を押 し た状態に し ます。
浮動型ビ ュ ーを、 元のス タ ッ ク 上に ド ラ ッ グ し ます。
関数 リ ス ト ビ ュ ーのグ レ ーの矩形アウ ト ラ イ ンが、 ス タ ッ ク の上に重な
り 合っ た ら 、 マウス ボ タ ン を放 し ます。
関数 リ ス ト ビ ュ ーが元の ス タ ッ ク に戻 り 、 ス タ ッ ク 内の最後のペ
イ ン と し て追加 さ れ ます。
3
[関数 リ ス ト ] タ ブ上でマウス ボ タ ン を押 し たま まに し ます。
こ の最後のペ イ ン を、同 じ ス タ ッ ク内にあるほかのペ イ ンの上に ド ラ ッ グ
し ます。
小 さ なグ レ ーの矩形アウ ト ラ イ ンが、 タ ブ ウ ィ ン ド ウ内の別の タ ブの上
に重な り 合っ た ら 、 マウス ボ タ ン を放 し ます。
マ ウ ス ボ タ ン を放 し た ス タ ッ ク 内の位置に、 関数 リ ス ト ビ ュ ーが
移動 し ます。
ビ ュ ーのレ イ アウ ト 構成の保存
ペ イ ン タ ビ ューの レ イ ア ウ ト 構成を保存 し て、 ペ イ ン タ を開 く たびに
使用で き る よ う に し ます。
1
ペ イ ン タ 内で ビ ュ ーを使いやすい配置に並べます。
2
メ ニ ュ ー バーか ら [ビ ュ ー|レ イ アウ ト |管理] を選択 し ます。
3
レ イ アウ ト ダ イ ア ログボ ッ ク スの [新 し いレ イ アウ ト ] ボ タ ン を ク リ ッ
ク し ます。
4
テキスト フ ィ ールド にレ イ アウト 名を 入力し 、ダ イ ア ログボ ッ ク スの背景
を ク リ ッ ク し て、ダ イ ア ログボ ッ ク スの右上隅にある [x] ボ タ ン を ク リ ッ
ク し て閉 じ ます。
レ イ ア ウ ト 構成が保存 さ れ ま す。 こ れで、 [ビ ュ ー| レ イ ア ウ ト ]
を選択す る と 、 カ ス ケー ド メ ニ ュ ーに保存 し た レ イ ア ウ ト が表示
さ れ ます。
ツールバーおよびシス テム ツ リ ーのレ イ アウ ト の保存
ツールバーお よ びシ ス テ ム ツ リ ーのカ ス タ マ イ ズ内容は、 ビ ュ ー
の レ イ ア ウ ト と は 別 個 に 保 存 さ れ ま す。 こ れ ら の 設 定 値 は
PowerBuilder に保持 さ れ、ユーザがア ク セ ス し た ワー ク スペースお
よ び選択 し た ビ ュー レ イ ア ウ ト のすべてに再適用 さ れます。
58
PowerBuilder
レ ッ スン 2
PowerBuilder の環境のカ ス タ マ イズ
ビ ュ ー レ イ アウ ト 構成を標準設定に戻す
PowerBuilder ペ イ ン タ には、 デフ ォ ル ト の ビ ュー レ イ ア ウ ト があ り ま
す。レ イ ア ウ ト 構成は、いつで も こ のデフ ォ ル ト の レ イ ア ウ ト に リ セ ッ
ト す る こ と がで き ます。
1
メ ニ ュ ー バーから [ビ ュ ー|レ イ アウ ト ] を選択 し ます。
2
カ スケー ド メ ニ ュ ーから 「デ フ ォル ト 」 を選択 し ます。
デ フ ォ ル ト の ビ ュ ー レ イ ア ウ ト がペ イ ン タ ワ ー ク ス ペー ス に適
用 さ れます。
PowerBuilder 入門
59
ツールバーのセ ッ ト ア ッ プ
ツールバーのセ ッ ト ア ッ プ
現在の学習個所
シ ステ ム ツ リ ー ウィ ン ド ウの操作
オブ ジ ェ ク ト のオープ ン
ビ ュ ーの操作
> ツ ールバーのセッ ト ア ッ プ
ペ イ ン タ の ワ ー ク スペー ス には、 パ ワ ーバーな ど、 作業時に使用で き
る ペ イ ン タ バー ツールバーが常に含ま れてい ます。 ツールバーのボ タ
ン は、 使用中の タ ーゲ ッ ト ま たはオブジ ェ ク ト の種類に応 じ て変わ り
ます。 ツールバーを カ ス タ マ イ ズ し て、 機能を追加す る こ と も で き ま
す。
こ こ では、 ツールバーの外観を以下の よ う に変更 し ます。
•
ツ ールバー ボタ ン 上へのラ ベルの表示
•
ツ ールバーの浮動化
•
ツ ールバーの再配置
ツールバー ボ タ ン上への ラ ベルの表示
ツールバー ボ タ ン の上にカー ソ ル を置いて PowerTip を表示す る こ と
で、 ツールバー ボ タ ン の機能を知 る こ と がで き ます。 PowerTip は、 ボ
タ ンの機能を示すポ ッ プア ッ プ テ キ ス ト です。
ツールバーの各ボ タ ン上に、 ラ ベルを表示す る こ と も で き ます。
1
パワーバーにあ る ボ タ ン のいずれかの上に マ ウ ス ポ イ ン タ を 合わせ ま
す。 こ こ ではク リ ッ ク し ないで く だ さ い。
ボ タ ン の PowerTip が表示 さ れます。
2
メ ニ ュ ー バーか ら [ツール|ツールバー] を選択 し ます。
ツールバー ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
60
PowerBuilder
レ ッ スン 2
3
PowerBuilder の環境のカ ス タ マ イズ
[テキス ト の表示] チ ェ ッ ク ボ ッ ク ス を オ ンに し てか ら、 [閉 じ る] ボ タ ン
を ク リ ッ ク し ます。
パ ワ ーバー と ペ イ ン タ バーにあ る 各ボ タ ン に ラ ベルが表示 さ れ ま
す。
ツールバーの浮動化
作業時な ど には、 ツールバーを浮動化 し て、 ペ イ ン タ の ワー ク スペー
ス の周辺に移動 さ せ る こ と がで き ます。
1
パワーバー内の任意の場所を右 ク リ ッ ク し ます。
ツールバーのポ ッ プア ッ プ メ ニ ュ ーが表示 さ れます。 ポ ッ プア ッ
プ メ ニ ュ ーで、 ワー ク スペース の上下左右の位置に ツールバーを
設定で き ます。ツールバーを浮動状態に設定す る こ と も で き ます。
ポ ッ プ ア ッ プ メ ニ ュ ーについて
PowerBuilder では、 ポ ッ プア ッ プ メ ニ ュ ーを用いてすばや く 処理
を行 う こ と がで き ま す。 ポ ッ プ ア ッ プ さ れ る メ ニ ュ ー項目は、 ど
のペ イ ン タ を使用 し てい る か、 お よ び ワ ー ク ス ペー ス 内の ど こ で
右マ ウ ス ボ タ ン を ク リ ッ ク し たかに よ っ て異な り ます。
2
ポ ッ プ ア ッ プ メ ニ ュ ーで [浮動] を ク リ ッ ク し ます。
ペ イ ン タ バーが浮動型 ツ ールバーに変わ り ま す。 浮動型 ツ ール
バーの形状は調整で き ます。
PowerBuilder 入門
61
ツールバーのセ ッ ト ア ッ プ
3
パワーバーの端または境界にマウス ポ イ ン タ を移動 し ます。
パワーバー上で左マウス ボタ ン を 押し 、ワーク スペースの左側にド ラ ッ グ
し ます。
パワーバーが垂直バーに変わっ た ら 、 マウス ボ タ ン を放 し ます。
フ レーム の左部にパ ワーバーが固定 さ れ ます。
ツールバーの再配置
ツールバーの位置は、作業ス タ イ ルに合わせて カ ス タ マ イ ズで き ます。
1
メ ニ ュ ー バーか ら [ツール|ツールバー] を選択 し ます。
ツールバー ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ま す。 現在選択 さ れて
い る ツ ールバーの位置は、 [移動] ラ ジ オ ボ タ ン の う ち の ど れが
チ ェ ッ ク さ れてい る か を調べればわか り ます。
62
PowerBuilder
レ ッ スン 2
2
PowerBuilder の環境のカ ス タ マ イズ
[上部] を ク リ ッ ク し ます。
こ の操作に よ り 、 パ ワ ーバーが ワ ー ク ス ペー ス の上部に再配置 さ
れます。
ラ ジオボタ ン のグレ ー表示(指定し たツ ールバーが表示さ れていない場合)
指定 し た ツールバーがペ イ ン タ に表示 さ れていない場合は、 その
ツールバーを ワ ー ク ス ペー ス 内の ど の位置に表示す る か を選択で
き ません。 こ の場合は、 ラ ジオボ タ ン がグ レー表示にな り ます。 ラ
ジオボ タ ン を選択可能な状態にす る には、 先に [表示] ボ タ ン を
ク リ ッ ク す る必要があ り ます。
3
[ツールバーの選択] リ ス ト ボ ッ ク スで 「ペ イ ン タ バー 1」 を選択 し 、 [右
端] を ク リ ッ ク し ます。
ツールバー ダ イ ア ログボ ッ ク スで [閉 じ る] を ク リ ッ ク し ます。
4
「ペ イ ン タ バー 2」 を右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから [左端]
を選択 し ます。
こ の操作に よ り 、 2 つのペ イ ン タ バーの位置が入れ替わ り ます。
5
ツールバーを目的の場所に配置 し ます。
ツールバーは、 ペ イ ン タ の ワ ー ク ス ペー ス の上下左右に ド ラ ッ グ
で き ます。 ツールバーの位置を固定す る と 、 ツールバー ボ タ ン の
左ま たは上部に ド ラ ッ グ バーがで き ます。 ド ラ ッ グ バーを ク リ ッ
ク し て マ ウ ス を移動す る こ と で、 ペ イ ン タ の ワ ー ク ス ペー ス の周
辺にツールバーを移動で き ます。
ツールバー設定は、 すべてのペ イ ン に適用 さ れ ま す。 ま た、 こ の
設定は保存 さ れ、 次回 PowerBuilder を開いた時に も こ の設定が適
用 さ れます。
6
PowerBuilder 入門
ア プ リ ケーシ ョ ン ペ イ ン タ を閉 じ ます。
63
ツールバーのセ ッ ト ア ッ プ
64
PowerBuilder
レ ッ ス ン 3
ロ グ イ ン ウ ィ ン ド ウの作成
ウ ィ ン ド ウ は、 ユーザ と PowerBuilder アプ リ ケーシ ョ ン を結ぶ主
要な イ ン タ フ ェ ー ス です。 情報の表示、 情報の入力要求、 マ ウ ス
やキーボー ド の操作への応答は、 ウ ィ ン ド ウ に よ っ て実現 さ れま
す。
ウ ィ ン ド ウ は、 ウ ィ ン ド ウ ペ イ ン タ を使用 し て作成す る 独立 し た
オブ ジ ェ ク ト です。 PowerBuilder では、 ア プ リ ケーシ ョ ン を開発
し てい る 間、 いつで も ウ ィ ン ド ウ を作成で き ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
ウ ィ ン ド ウ の新規作成
•
コ ン ト ロ ールの追加
•
ウ ィ ン ド ウ のタ ブ順序の変更
•
Help イ ベン ト のコ ーディ ン グ と ウ ィ ン ド ウ のプレ ビ ュ ー
•
ロ グ イ ン ウ ィ ン ド ウ を 開く ス ク リ プト の記述
所要時間
約 20 分
PowerBuilder 入門
65
ウ ィ ン ド ウの新規作成
ウ ィ ン ド ウの新規作成
現在の学習個所
> ウィ ン ド ウの新規作成
コ ン ト ロ ールの追加
ウィ ン ド ウのタ ブ 順序の変更
Help イ ベン ト のコ ーディ ン グと ウィ ン ド ウのプ レ ビ ュ ー
ロ グイ ン ウィ ン ド ウを 開く スク リ プ ト の記述
こ の ス テ ッ プでは、 アプ リ ケーシ ョ ン の ウ ィ ン ド ウ を新規に作成 し ま
す。 こ こ で作成す る ウ ィ ン ド ウ は、 ユーザ ID お よ びパ ス ワー ド の入力
と 、 デー タ ベースへの接続が可能な ロ グ イ ン ウ ィ ン ド ウ です。 こ の ロ
グ イ ン ウ ィ ン ド ウ は レ ス ポ ン ス ウ ィ ン ド ウ です。
レ スポ ン ス ウ ィ ン ド ウについて
レ ス ポ ン ス ウ ィ ン ド ウ と は、 ユーザに情報を要求す る ダ イ ア ロ グ ボ ッ
ク ス です。 レ ス ポ ン ス ウ ィ ン ド ウ はアプ リ ケーシ ョ ン モーダルです。
レ ス ポ ン ス ウ ィ ン ド ウ は、 表示 さ れ る と ア ク テ ィ ブ (フ ォ ーカ ス さ れ
てい る 状態) にな り 、 ユーザが応答す る ま でそのアプ リ ケーシ ョ ン以
外の ウ ィ ン ド ウ にア ク セ ス で き な く な り ます。ただ し 、ほかの Windows
アプ リ ケーシ ョ ン にはア ク セ ス で き ます。 こ の場合、 元のアプ リ ケー
シ ョ ン に戻 っ て も レ ス ポ ン ス ウ ィ ン ド ウ は ア ク テ ィ ブ な状態 を保ち
ます。
1
パワーバーの [新規作成] ボ タ ン を ク リ ッ ク し ます。
新規作成 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
2
[PB オブ ジ ェ ク ト ] タ ブ を ク リ ッ ク し ます。
[ウ ィ ン ド ウ] ア イ コ ン を選択 し て [OK] を ク リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ が開 き ます。 ス タ イ ルバー と ペ イ ン タ バー 3
と い う 、 2 つのツールバーがあ る こ と に注意 し て く だ さ い。
3
ウ ィ ン ド ウ ペ イ ン タ に レ イ アウ ト ビ ュ ー と プ ロパテ ィ ビ ュ ーが表示 さ
れている こ と を確認 し ます。
こ れ ら の ビ ュ ーは、 [ビ ュ ー] メ ニ ュ ーか ら 選択 し て表示 し ま す。
こ れ ら の ビ ュ ーが メ ニ ュ ー内でグ レ ー表示 さ れてい る 場合は、 す
でにペ イ ン タ に表示 さ れてい ます。
デフ ォ ル ト の ビ ュー レ イ ア ウ ト には、 両方のビ ュ ーがあ り ます。
66
PowerBuilder
レ ッ スン 3
ロ グ イ ン ウ ィ ン ド ウの作成
デ フ ォル ト のペ イ ン タ レ イ アウ ト にするには
ワ ー ク スペース の メ ニ ュ ー バーか ら [ビ ュ ー|レ イ ア ウ ト | (デ
フ ォ ル ト )] を選択 し ます。
レ イ ア ウ ト ビ ュ ー内の四角形は、 作成 し てい る ウ ィ ン ド ウ を表 し
ます。 プ ロ パテ ィ ビ ュ ーのデフ ォ ル ト プ ロ パテ ィ は、 ウ ィ ン ド ウ
が表示可能かつ使用可能にな っ てお り 、 ウ ィ ン ド ウ の種類が ウ ィ
ン ド ウ 型であ る こ と を示 し ま す。 プ ロ パテ ィ ビ ュ ーを ス ク ロ ール
し ない と 、 ウ ィ ン ド ウ の種類が表示 さ れない場合 も あ り ます。
ウ ィ ン ド ウがペグボー ド 状にな っ ていない場合
レ イ ア ウ ト ビ ュ ー内の ウ ィ ン ド ウ の外観が無地で表示 さ れてい る
場合は、 [グ リ ッ ド の表示] オプシ ョ ン が無効にな っ てい ます。 こ
のオプシ ョ ン を有効にす る には、 メ ニ ュ ー バーか ら [デザ イ ン|
オプシ ョ ン] を選択 し ま す。 次に、 オプシ ョ ン ダ イ ア ロ グ ボ ッ ク
ス の [全般] ページで [グ リ ッ ド の表示] チ ェ ッ ク ボ ッ ク ス を オ
ン に し ます。 [更新] を ク リ ッ ク し 、 [OK] を ク リ ッ ク し て変更を
保存 し 、 ダ イ ア ロ グ ボ ッ ク ス を閉 じ ます。
4
PowerBuilder 入門
プ ロパテ ィ ビ ュ ーの [全般] ページの [ タ イ ト ル] テキス ト ボ ッ ク スに
「Welcome」 と 入力 し ます。
[ウ ィ ン ド ウの種類] ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「response!」 を
選択 し ます。
67
ウ ィ ン ド ウの新規作成
5
[ タ イ ト ルバー] と [ コ ン ト ロール メ ニ ュ ー] チ ェ ッ ク ボ ッ ク スがオ ンに
な っ ている こ と を確認 し ます。
[文脈ヘルプ] チ ェ ッ ク ボ ッ ク ス を オンに し ます。
文脈ヘルプ プ ロ パテ ィ に よ っ て、 ロ グ イ ン ウ ィ ン ド ウ の タ イ ト ル
バー内の [閉 じ る] ボ タ ン の横に [?] ボ タ ン が追加 さ れ ま す。
[?] ボ タ ン を ク リ ッ ク す る と 、 ウ ィ ン ド ウ コ ン ト ロ ールの Help
イ ベン ト を発生 さ せ る こ と がで き ます。
6
プ ロパテ ィ ビ ュ ーの [その他] タ ブ を ク リ ッ ク し ます。
[幅] テキス ト ボ ッ ク スに 「2300」、 [高 さ ] テキス ト ボ ッ ク スに 「1000」
と 入力 し ます。
〔Tab〕 キーを押 し ます。
レ イ ア ウ ト ビ ュ ー内にあ る長方形の ウ ィ ン ド ウ のサ イ ズが変更 さ
れ ます。 入力す る 値は、 PowerBuilder 単位系 (PBU) です。 こ の値
は、 後で コ ン ト ロ ールを ウ ィ ン ド ウ に追加す る と き に修正で き ま
す。
位置プ ロパテ ィ を入力する別の方法
値は、 手動入力す る かわ り に ス ピ ン コ ン ト ロ ールを使用 し て入力
で き ます。
レ イ ア ウ ト ビ ュ ー内の ロ グ イ ン ウ ィ ン ド ウ のサ イ ズ を変更す る
方法 と し てはそれ以外に も 、 ポ イ ン タ を ウ ィ ン ド ウ の下部 ま たは
右端に移動す る 方法が あ り ま す。 ポ イ ン タ が双方向の矢印に変
わっ た ら 、 ド ラ ッ グ し て ウ ィ ン ド ウ のサ イ ズ を変更で き ます。
7
メ ニ ュ ー バーか ら [フ ァ イル|上書き保存] を選択 し ます。
ウ ィ ン ド ウ の保存 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ま す。 [ア プ リ
ケーシ ョ ン ラ イ ブ ラ リ ] テ キ ス ト ボ ッ ク ス には、 唯一の ラ イ ブ ラ
リ と し て 「Pbtutor.pbl」 が選択 さ れてい ます。
8
ウ ィ ン ド ウ名に 「w_welcome」 と 入力 し ます。
「w_」 は、 ウ ィ ン ド ウ を表す標準的な接頭辞です。
9
(オプ シ ョ ン) [コ メ ン ト ] テキス ト ボ ッ ク スに以下のコ メ ン ト を入力 し
ます。
こ れはログ イ ン ウ ィ ン ド ウです。続行するには ID と パスワー ド を
入力する必要があ り ます。
68
PowerBuilder
レ ッ スン 3
ロ グ イ ン ウ ィ ン ド ウの作成
こ の コ メ ン ト は、 ラ イ ブ ラ リ ペ イ ン タ の リ ス ト ビ ュ ーで表示で き
ます。
10 [OK] を ク リ ッ ク し ます。
新 し い ロ グ イ ン ウ ィ ン ド ウ が保存 さ れます。 シ ス テ ム ツ リ ー内の
MyWorkspace、 pbtutor、 お よ び pbtutor.pbl を展開す る と 、 その下部
に w_welcome が表示 さ れ ます。
PowerBuilder 入門
69
コ ン ト ロールの追加
コ ン ト ロールの追加
現在の学習個所
ウィ ン ド ウの新規作成
> コ ン ト ロ ールの追加
ウィ ン ド ウのタ ブ 順序の変更
Help イ ベン ト のコ ーディ ン グと ウィ ン ド ウのプ レ ビ ュ ー
ロ グイ ン ウィ ン ド ウを 開く スク リ プ ト の記述
ユーザは コ ン ト ロ ールを介 し て、 ウ ィ ン ド ウ やデー タ ウ ィ ン ド ウ な ど
の PowerBuilder オ ブ ジ ェ ク ト と 対話で き ま す。 ま ず こ れ ら の コ ン ト
ロ ールのプ ロ パテ ィ を設定 し 、 後で コ ン ト ロ ール イ ベン ト お よ び関数
の ス ク リ プ ト を追加 し ます。
コ ン ト ロ ールを追加す る
には、 [挿入] メ ニ ュ ーか、 ま たはペ イ ン タ バー 1 の コ ン ト ロ ール ボ
タ ン を選択 し ま す。 ツールバーを カ ス タ マ イ ズ し ない限 り 、 ペ イ ン タ
バーに表示 さ れ る コ ン ト ロ ール ボ タ ンは 1 つだけです。 ペ イ ン タ を最
初に開いた と き に、 ペ イ ン タ バー 1 の中に コ マ ン ド ボ タ ン コ ン ト ロ ー
ル ボ タ ン が表示 さ れ、 その右側に下矢印が表示 さ れます。 その下矢印
を ク リ ッ ク す る と 、 コ ン ト ロ ール ボ タ ンの ド ロ ッ プダ ウ ン リ ス ト が表
示 さ れ ます。
ペ イ ン タ バーから のコ ン ト ロール ボ タ ンの選択
ド ロ ッ プダ ウ ン リ ス ト か ら 選択で き る コ ン ト ロ ールの一部を、 以下の
表に示 し ます。
ボ タ ンの外観
コ ン ト ロールの
種類
コ マン ド ボ タ ン
ピ クチャ
ピ クチャ ハイ
パー リ ン ク
こ の チ ュ ー ト リ ア ル で は使用 し な い。
Web サ イ ト への リ ン ク を 指定す る と き
に使用す る
ピ クチャ ボタ ン
こ のチ ュ ー ト リ アルでは使用 し ない。 コ
マ ン ド ボ タ ン に似てい る が、 テ キ ス ト
だけではな く 、 ピ ク チ ャ も 表示 さ れ る
ロ グ イ ン ウ ィ ン ド ウ にテ キ ス ト ラ ベル
を追加す る
スタティ ッ ク テ
キス ト
70
チ ュ ー ト リ アルでの使用法
ペ イ ン タ バー 1 の コ ン ト ロ ール ボ タ ン
のデフ ォ ル ト ア イ コ ン。 コ マン ド ボ タ
ンの追加については、 こ の レ ッ ス ンの後
半を参照
ロ グ イ ン ウ ィ ン ド ウ に ピ ク チ ャ を追加
する
PowerBuilder
レ ッ スン 3
ボ タ ンの外観
コ ン ト ロールの
種類
ロ グ イ ン ウ ィ ン ド ウの作成
チ ュ ー ト リ アルでの使用法
ス タテ ィ ッ ク ハ
イ パー リ ン ク
Web サ イ ト への リ ン ク を提供す る
シ ン グル ラ イ ン
エデ ィ ッ ト
ロ グ イ ン ウ ィ ン ド ウ にユーザ入力用テ
キ ス ト ボ ッ ク ス を追加す る
マルチ ラ イ ン エ
ディ ッ ト
こ のチ ュ ー ト リ アルでは使用 し ない。マ
ルチ ラ イ ン 編集用の テ キ ス ト ボ ッ ク ス
を追加す る
コ ン ト ロ ールを選択す る と 、 ペ イ ン タ バー 1 上にあ る [ コ マ ン ド ボ タ
ン] ボ タ ン のかわ り に、 選択 し た コ ン ト ロ ールが表示 さ れます。
コ ン ト ロールを 3D 表示にする
コ ン ト ロ ールの外観を 3 次元表示にす る には、 メ ニ ュ ー バーか ら [デ
ザ イ ン |オプ シ ョ ン] を 選択 し 、 オプ シ ョ ン ダ イ ア ロ グ ボ ッ ク ス で
[全般] ページの [3D がデフ ォ ル ト ] チ ェ ッ ク ボ ッ ク ス がオ ン にな っ
てい る こ と を確認 し ます。 ウ ィ ン ド ウ の背景色は、 ウ ィ ン ド ウ ペ イ ン
タ のプ ロ パテ ィ ビ ュ ーで、 デフ ォ ル ト の 「3D オブ ジ ェ ク ト グ レ ー」
か ら 別の色に変更で き ます。
こ こ では、 コ ン ト ロ ールを追加 し 、 プ ロ パテ ィ の一部を変更 し て、 作
成 し た ロ グ イ ン ウ ィ ド ウ を修正 し ます。 こ の レ ッ ス ン の内容は以下の
と お り です。
PowerBuilder 入門
•
ピ ク チャ の追加
•
ス タ ティ ッ ク テ キ ス ト コ ン ト ロ ールの追加
•
ス タ ティ ッ ク テ キ ス ト コ ン ト ロ ールのプロ パティ の指定
•
シ ン グ ルラ イ ン エディ ッ ト コ ン ト ロ ールの追加
•
シ ン グ ルラ イ ン エディ ッ ト コ ン ト ロ ールのプロ パテ ィ の指定
•
コ マン ド ボタ ン コ ン ト ロ ールの追加
•
コ マン ド ボタ ン コ ン ト ロ ールのプロ パテ ィ の指定
71
コ ン ト ロールの追加
ピ ク チ ャ の追加
こ こ では、 ピ ク チ ャ コ ン ト ロ ール を ロ グ イ ン ウ ィ ン ド ウ に追加 し ま
す。
1
コ ン ト ロールの ド ロ ッ プ ダウン リ ス ト か ら [ピ ク チ ャ] ボ タ ン を選択 し
ます。
または
メ ニ ュ ー バーか ら [挿入| コ ン ト ロール|ピ ク チ ャ ] を選択 し ます。
2
レ イ アウ ト ビ ュ ーの長方形ウ ィ ン ド ウの内側を ク リ ッ ク し ます。
選択 し た場所に、 ピ ク チ ャ コ ン ト ロ ールが表示 さ れます。 コ ン ト
ロ ールを追加す る と 同時に、 プ ロ パテ ィ ビ ューが、 ウ ィ ン ド ウ プ
ロ パテ ィ の表示か ら コ ン ト ロ ール プ ロ パテ ィ の表示に切 り 替わ り
ます。
プ ロ パ テ ィ ビ ュ ー が表示 さ れ な い場合は、 メ ニ ュ ー バー か ら
[ビ ュ ー|プ ロ パテ ィ ] を選択 し ます。 プ ロ パテ ィ ビ ュ ーに コ ン ト
ロ ールのプ ロ パテ ィ が表示 さ れない場合は、 レ イ ア ウ ト ビ ュ ーの
ピ ク チ ャ コ ン ト ロ ールを ク リ ッ ク し ます。
コ ン ト ロールを削除するには
コ ン ト ロ ール を ウ ィ ン ド ウ に追加 し た後で不要に な っ た場合は、
コ ン ト ロ ール を選択 し て、 〔Delete〕 キーを押 し ま す。 コ ン ト ロ ー
ル と それに記述 さ れてい る ス ク リ プ ト が削除 さ れます。
3
プ ロパテ ィ ビ ュ ーで、 [全般] タ ブ上の [名前] テキス ト ボ ッ ク スか ら
「p_1」 を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「p_sports」 と 入力 し ます。
「p_sports」 はピ ク チ ャ 名です。 「p_」 はピ ク チ ャ コ ン ト ロ ールを表
す標準的な接頭辞です。
4
[ピ ク チ ャ 名] テキス ト ボ ッ ク スの隣にある参照 ( [...] ) ボ タ ン を ク リ ッ
ク し ます。
ピ ク チ ャ の選択 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
5
72
現行のデ ィ レ ク ト リ が Tutorial でない場合は、Tutorial デ ィ レ ク ト リ に移
動 し ます。
tutsport.bmp フ ァ イルを選択 し て [開 く ] を ク リ ッ ク し ます。
PowerBuilder
レ ッ スン 3
ロ グ イ ン ウ ィ ン ド ウの作成
選択 し た ビ ッ ト マ ッ プ が、 レ イ ア ウ ト ビ ュ ーに追加 し た コ ン ト
ロ ールの内部に表示 さ れます。 プ ロ パテ ィ ビ ュ ーでは、 デフ ォ ル
ト で [表示可能] 、 [使用可能] 、 お よ び [元のサ イ ズ] チ ェ ッ ク
ボ ッ ク ス がオ ン にな り ます。
6
レ イ アウ ト ビ ュ ーで ピ ク チ ャ コ ン ト ロールが選択 さ れている こ と を確認
し ます。
プ ロパテ ィ ビ ュ ーの [その他] タ ブ を ク リ ッ ク し ます。
[X] テキス ト ボ ッ ク スに 「40」 、 [Y] テキス ト ボ ッ ク スに 「50」 と 入力
し ます。
[X] お よ び [Y] テ キ ス ト ボ ッ ク ス の ス ピ ン コ ン ト ロ ールを使用
し て、 こ れ ら の数値を入力す る こ と も で き ま す。 こ の レ ッ ス ン の
最後に ウ ィ ン ド ウ を プ レ ビ ュ ー し た後で、 必要な ら ピ ク チ ャ コ ン
ト ロ ールの位置を調整 し ます。
7
[幅] テキス ト ボ ッ ク スに 「300」、 [高 さ ] テキス ト ボ ッ ク スに 「250」 と
入力 し ます。
ピ ク チ ャ コ ン ト ロ ールのサ イ ズ を変更 し ま す。 こ の ピ ク チ ャ のサ
イ ズ も 、 ウ ィ ン ド ウ を プ レ ビ ュ ー し た後で、 必要に応 じ て調整で
き ます。
PowerBuilder 入門
73
コ ン ト ロールの追加
ス タ テ ィ ッ ク テキス ト コ ン ト ロールの追加
こ の ス テ ッ プでは、 ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ール を ロ グ イ ン
ウ ィ ン ド ウ に追加 し ます。
1
コ ン ト ロールの ド ロ ッ プ ダウン リ ス ト か ら [テキス ト ] ボ タ ン を選択 し
ます。
または
メ ニ ュ ー バーから [挿入| コ ン ト ロール|ス タ テ ィ ッ ク テキス ト ] を選
択 し ます。
2
レ イ ア ウ ト ビ ュ ーに追加 し た ピ ク チ ャ コ ン ト ロ ールの右側のワー ク ス
ペース を ク リ ッ ク し ます。
ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ールが、 選択 し た場所に表示 さ れ
ます。
3
ス タ テ ィ ッ ク テキス ト コ ン ト ロールを右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ
ニ ュ ーから [複製] を選択 し ます。
選択 し てい る コ ン ト ロ ールが複製 さ れます。
4
も う 一度ス タ テ ィ ッ ク テキス ト コ ン ト ロールのポ ッ プ ア ッ プ メ ニ ュ ー
から [複製] を選択 し ます。
3 つ目の ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ールが複製 さ れ ます。
ウ ィ ン ド ウ 上部に ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ールが縦に 3 つ
並んで配置 さ れ ます。
5
3 つの コ ン ト ロールの間隔を十分に取っ て配置 し 直 し ます。
ス タ テ ィ ッ ク テキス ト コ ン ト ロールのプ ロパテ ィ の指定
こ の ス テ ッ プでは、 ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ール ( ラ ベル テ
キ ス ト ボ ッ ク ス) のプ ロ パテ ィ を指定 し て、 それ ら の コ ン ト ロ ールの
ロ グ イ ン ウ ィ ン ド ウ 上での表示方法を定義 し ます。
1
追加 し た一番上のス タ テ ィ ッ ク テキス ト コ ン ト ロールを選択 し ます。
プ ロ パテ ィ ビ ュ ーに、ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ールのプ ロ
パテ ィ が表示 さ れます。プ ロ パテ ィ ビ ュ ーが表示 さ れない場合は、
メ ニ ュ ー バーか ら [ビ ュ ー|プ ロ パテ ィ ] を選択 し ます。
74
PowerBuilder
レ ッ スン 3
2
ロ グ イ ン ウ ィ ン ド ウの作成
プ ロパテ ィ ビ ュ ーで、 [全般] ページ上の [名前] テキス ト ボ ッ ク スから
「st_1」 を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「st_welcome」 と 入力 し ます。
こ れで、 コ ン ト ロ ールの名前に意味を持たせ る こ と がで き ま し た。
「st_」 は ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ールの標準的な接頭辞で
す。
3
[テキス ト ] テキス ト ボ ッ ク スの 「未設定」 を選択 し ます。
「PowerCAP 営業支援シ ステム」 と 入力 し ます。
〔Enter〕 を押 し た り 、 プ ロ パテ ィ ビ ュ ーのほかのページ を選択す
る か、 ま たは別の ビ ュ ーを ク リ ッ ク す る と 、 入力 し た テ キ ス ト が
レ イ ア ウ ト ビ ュ ーで 「未設定」 が入力 し たテ キ ス ト に置 き 換わ り
ます。
4
プ ロパテ ィ ビ ュ ーの [フ ォ ン ト ] タ ブ を ク リ ッ ク し ます。
この コ ン ト ロールの [サイ ズ] プ ロパテ ィ を 18 ポ イ ン ト に変更 し ます。
コ ン ト ロ ール内のテ キ ス ト のサ イ ズが変更 さ れ ます。
デフ ォ ル ト の書体は 「MS ゴ シ ッ ク 」 です。 ただ し 、 シ ス テ ム に こ
の フ ォ ン ト と サ イ ズが用意 さ れていない と き は、 ほかの も の を選
択 し てか ま い ません。
ス タ イルバーの使い方
ス タ イ ルバーを使用 し て フ ォ ン ト を変更す る こ と も で き ま す。 ス
タ イ ルバーが表示 さ れていない場合は、 メ ニ ュ ー バーか ら [ツー
ル|ツールバー] を選択 し て、 [ツールバーの選択] リ ス ト ボ ッ ク
ス の 「ス タ イ ルバー」 を ク リ ッ ク し 、 [表示] ボ タ ン を ク リ ッ ク し
て く だ さ い。
5
ス タ テ ィ ッ ク テキス ト コ ン ト ロールのサイズ を、 入力 し たテキス ト に合
わせて調整 し ます。
入力 し た テキス ト の全体が表示 さ れる よ う に調整 し て く だ さ い。
サ イ ズ を調整す る には、 レ イ ア ウ ト ビ ュ ーで コ ン ト ロ ールの右上
隅のハン ド ルを ウ ィ ン ド ウ の右上隅の方へ ド ラ ッ グ し ます。
サ イ ズ を変更す る 方法 と し てはそれ以外に も 、 こ の コ ン ト ロ ール
のプ ロ パテ ィ ビ ュ ーの [その他] ページで適切な値を入力す る 方
法があ り ます。
6
PowerBuilder 入門
レ イ アウ ト ビ ュ ーで追加 し た 2 番目のス タ テ ィ ッ ク テキス ト コ ン ト ロー
ルを選択 し ます。
75
コ ン ト ロールの追加
プ ロ パ テ ィ ビ ュ ー で、 [全般] ペ ー ジ の [名前] テ キ ス ト ボ ッ ク ス に
「st_userid」 と 入力 し ます。
[テキス ト ] テキス ト ボ ッ ク スに 「ユーザ ID:」 と 入力 し 、 〔Tab〕 を押 し
ます。
コ ン ト ロ ール内に表示 さ れてい る テ キ ス ト が変更 さ れ ます。
7
レ イ アウ ト ビ ュ ーで追加 し た 3 番目のス タ テ ィ ッ ク テキス ト コ ン ト ロー
ルを選択 し ます。
プ ロ パ テ ィ ビ ュ ー で、 [全般] ペ ー ジ の [名前] テ キ ス ト ボ ッ ク ス に
「st_password」 と 入力 し ます。
[テキス ト ] テキス ト ボ ッ ク スに 「パスワー ド :」 と 入力 し 、 〔Tab〕 を押
し ます。
変更内容が レ イ ア ウ ト ビ ューに表示 さ れます。
シ ングルラ イ ン エデ ィ ッ ト コ ン ト ロールの追加
こ の ス テ ッ プでは、 2 つのシ ン グル ラ イ ン エデ ィ ッ ト コ ン ト ロ ールを
ウ ィ ン ド ウ に追加 し て、デー タ ベースへの接続に必要なユーザ ID と パ
ス ワー ド を入力で き る よ う に し ます。シ ン グル ラ イ ン エデ ィ ッ ト コ ン
ト ロ ール と は、 1 行分のテ キ ス ト を入力で き る テ キ ス ト ボ ッ ク ス の こ
と です。 通常、 シ ン グル ラ イ ン エデ ィ ッ ト コ ン ト ロ ールはデー タ の入
出力に使用 さ れます。
1
76
コ ン ト ロールの ド ロ ッ プ ダウン リ ス ト か ら [シ ングルラ イ ン エデ ィ ッ ト ]
ボ タ ン を選択 し ます。
または
メ ニ ュ ー バーか ら [挿入| コ ン ト ロール|シ ングルラ イ ン エデ ィ ッ ト ] を
選択 し ます。
PowerBuilder
レ ッ スン 3
2
ロ グ イ ン ウ ィ ン ド ウの作成
レ イ アウ ト ビ ュ ーに追加 し た st-userid ス タ テ ィ ッ ク テキス ト コ ン ト
ロールの右側のワー ク スペース を ク リ ッ ク し ます。
選択 し た場所に シ ン グル ラ イ ン エデ ィ ッ ト コ ン ト ロ ールが表示
さ れ ます。
3
シ ングルラ イ ン エデ ィ ッ ト コ ン ト ロールの幅を広げてサイズ を調整 し ま
す。
4
シ ングルラ イ ン エデ ィ ッ ト コ ン ト ロールを右ク リ ッ ク し て、 ポ ッ プ ア ッ
プ メ ニ ュ ーから [複製] を選択 し ます。
複製 し たシ ングルラ イ ン エデ ィ ッ ト コ ン ト ロールを、 ス タ テ ィ ッ ク テキ
ス ト コ ン ト ロール st_password の右隣に移動 し ます。
ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ールの右側に、シ ン グル ラ イ ン エ
デ ィ ッ ト コ ン ト ロ ールが縦に 2 つ並んで配置 さ れます。
シ ングル ラ イ ン エデ ィ ッ ト コ ン ト ロールのプ ロパテ ィ の指定
こ の ス テ ッ プでは、 前の ス テ ッ プで ロ グ イ ン ウ ィ ン ド ウ に追加 し た シ
ン グル ラ イ ン エデ ィ ッ ト コ ン ト ロ ールの各プ ロ パテ ィ を定義 し ます。
1
1 番目のシ ングルラ イ ン エデ ィ ッ ト コ ン ト ロールを選択 し ます。
プ ロ パテ ィ ビ ューの [全般] ページにシ ン グル ラ イ ン エデ ィ ッ ト
コ ン ト ロ ールのプ ロ パテ ィ が表示 さ れます。 プ ロ パテ ィ ビ ュ ーが
表示 さ れない場合は、 メ ニ ュ ー バーか ら [ビ ュ ー|プ ロ パテ ィ ]
を選択 し ます。
2
PowerBuilder 入門
[名前] テキス ト ボ ッ ク スから 「sle_1」 を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「sle_userid」 と 入力 し ます。
77
コ ン ト ロールの追加
[テキス ト ] テキス ト ボ ッ ク スのデ フ ォル ト テキス ト 「未設定」 を ク リ ア
し ます。
「sle_」 はシ ン グル ラ イ ン エデ ィ ッ ト コ ン ト ロ ールの標準的な接頭
辞です。
3
2 番目のシ ングルラ イ ン エデ ィ ッ ト コ ン ト ロールを選択 し ます。
[名前] テキス ト ボ ッ ク スに 「sle_password」 と 入力 し ます。
[テキス ト ] テキス ト ボ ッ ク スのデ フ ォル ト テキス ト 「未設定」 を ク リ ア
し ます。
[パスワー ド ] チ ェ ッ ク ボ ッ ク ス を オンに し ます。
[パ ス ワー ド ] チ ェ ッ ク ボ ッ ク ス をチ ェ ッ ク し てい る と 、 実行時に
ユーザが入力す る パ ス ワー ド がア ス タ リ ス ク で表示 さ れます。
コ マ ン ド ボ タ ン コ ン ト ロールの追加
こ の ス テ ッ プでは、 コ マ ン ド ボ タ ン コ ン ト ロ ールを追加 し ます。 こ れ
ら のボ タ ン を ク リ ッ ク し た と き に実行す る ス ク リ プ ト は、 後で定義 し
ます。
1
コ ン ト ロールの ド ロ ッ プ ダウン リ ス ト か ら [コ マ ン ド ボ タ ン] ボ タ ン を
選択 し ます。
または
メ ニ ュ ー バーか ら [挿入| コ ン ト ロール| コ マ ン ド ボ タ ン] を選択 し ま
す。
2
シ ングルラ イ ン エデ ィ ッ ト コ ン ト ロール sle_userid の右側のワー ク ス
ペース を ク リ ッ ク し ます。
選択 し た場所に コ マ ン ド ボ タ ン コ ン ト ロ ールが表示 さ れ ます。
3
コ マ ン ド ボ タ ン コ ン ト ロールを右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ー
から [複製] を選択 し ます。
選択 し てい る コ ン ト ロ ールが複製 さ れます。
4
78
必要に応 じ て コ マ ン ド ボ タ ン コ ン ト ロールの位置を変更 し 、2 つの コ マ ン
ド ボ タ ン コ ン ト ロールの間に適当な間隔を置 く よ う に し ます。
PowerBuilder
レ ッ スン 3
ロ グ イ ン ウ ィ ン ド ウの作成
コ マ ン ド ボ タ ン コ ン ト ロールのプ ロパテ ィ の指定
こ の ス テ ッ プでは、 コ マ ン ド ボ タ ン コ ン ト ロ ールのプ ロ パテ ィ を定義
し ます。
1
1 番目のコ マ ン ド ボ タ ン コ ン ト ロールを選択 し ます。
プ ロ パテ ィ ビ ュ ーの [全般] ページ に、 コ マ ン ド ボ タ ン コ ン ト
ロ ールのプ ロ パテ ィ が表示 さ れます。
2
プ ロ パ テ ィ ビ ュ ー で、 [全般] ペー ジ の [名前] テ キ ス ト ボ ッ ク ス に
「cb_ok」 と 入力 し ます。
[テキス ト ] テキス ト ボ ッ ク スに 「OK」 と 入力 し ます。
[デ フ ォル ト ] チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。
こ こ では コ ン ト ロ ールの内容を説明す る ために、デフ ォ ル ト 名 「未
設定」 を変更 し て、 ボ タ ン に ラ ベルを付けてい ます。 [デフ ォ ル ト ]
チ ェ ッ ク ボ ッ ク ス を オン に し たので、 〔Enter〕 を押 し た と き に、 こ
のボ タ ン の Clicked イ ベン ト が発生 し ます。
3
2 番目のコ マ ン ド ボ タ ン コ ン ト ロールを選択 し ます。
[名前] テキス ト ボ ッ ク スに 「cb_cancel」 と 入力 し ます。
[テキス ト ] テキス ト ボ ッ ク スに 「キ ャ ン セル」 と 入力 し ます。
[キ ャ ン セル] チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。
[キ ャ ン セル] チ ェ ッ ク ボ ッ ク ス を オ ンに し たので、 〔Esc〕 を押 し
た と き に、 こ のボ タ ン の Clicked イ ベン ト が発生 し ます。
PowerBuilder 入門
79
ウ ィ ン ド ウの タ ブ順序の変更
ウ ィ ン ド ウの タ ブ順序の変更
現在の学習個所
ウィ ン ド ウの新規作成
コ ン ト ロ ールの追加
> ウィ ン ド ウのタ ブ 順序の変更
Help イ ベン ト のコ ーディ ン グと ウィ ン ド ウのプ レ ビ ュ ー
ロ グイ ン ウィ ン ド ウを 開く スク リ プ ト の記述
ウ ィ ン ド ウ 上に コ ン ト ロ ールを配置す る と 、 デフ ォ ル ト の タ ブ順序が
割 り 当て ら れ ま す。 タ ブ順序は、 〔Tab〕 を押 し た際に、 複数の コ ン ト
ロ ールを フ ォ ーカ ス が移動す る順序を決め る も のです。
こ の ス テ ッ プでは、 作成 し た ウ ィ ン ド ウ の タ ブ順序を変更 し ます。
1
メ ニ ュ ー バーか ら [書式| タ ブ順序を表示] を選択 し ます。
デフ ォ ル ト の タ ブ順序が表示 さ れ ま す。 タ ブ順序は コ ン ト ロ ール
の相対位置に基づいて設定 さ れ、 コ ン ト ロ ールの右上に赤い数字
で表示 さ れ ま す。 タ ブ順序が 0 の コ ン ト ロ ールは、 タ ブ を押 し た
と き に フ ォーカ ス さ れない コ ン ト ロ ールです。
2
sle_userid コ ン ト ロールの [ タ ブ順序番号] を ク リ ッ ク し ます。
こ のコ ン ト ロールの タ ブ順序の値 と し て 「10」 と 入力 し ます。
新 し い タ ブ順序の番号を入力で き る のは、 古い番号が赤い背景の
青字に変わっ た場合のみです。
3
ほかのコ ン ト ロールの値が以下の と お り である こ と を確認 し ます。
設定対象の コ ン ト ロール
コ ン ト ロール名
sle_password
適用 さ れる値
20
[OK] ボ タ ンの コ マ ン ド ボ タ ン コ ン
ト ロ ール
cb_ok
30
[キ ャ ンセル] ボ タ ンの コ マン ド ボ タ
ン コ ン ト ロ ール
cb_cancel
40
パ ス ワ ー ド を入力す る ためのシ ン グ
ル ラ イ ン エデ ィ ッ ト コ ン ト ロ ール
80
PowerBuilder
レ ッ スン 3
4
ロ グ イ ン ウ ィ ン ド ウの作成
メ ニ ュ ー バーから [書式| タ ブ順序を表示] を選択 し ます。
こ れは ト グル ス イ ッ チにな っ てい ます。 こ の メ ニ ュ ー項目を選択
す る と 、 変更内容が保存 さ れ、 タ ブ順序の番号が ロ グ イ ン ウ ィ ン
ド ウ か ら 消去 さ れ ま す。 ペ イ ン タ バー上の [ タ ブ順序] ボ タ ン を
使用 し て も 同 じ 処理がで き ます。
PowerBuilder 入門
81
Help イ ベン ト の コ ーデ ィ ング と ウ ィ ン ド ウのプ レ ビ ュ ー
Help イ ベン ト の コ ーデ ィ ング と ウ ィ ン ド ウのプ レ ビ ュ ー
現在の学習個所
ウィ ン ド ウの新規作成
コ ン ト ロ ールの追加
ウィ ン ド ウのタ ブ 順序の変更
> Help イ ベン ト のコ ーディ ン グと ウィ ン ド ウのプ レ ビ ュ ー
ロ グイ ン ウィ ン ド ウを 開く スク リ プ ト の記述
こ の ス テ ッ プでは、 ス ク リ プ ト ビ ュ ーを使用 し て、 ロ グ イ ン ウ ィ ン ド
ウ に配置 さ れてい る シ ン グル ラ イ ン エデ ィ ッ ト コ ン ト ロ ールに状況
依存ヘルプ メ ッ セージ を追加 し 、 その ウ ィ ン ド ウ をプ レ ビ ュ ー表示 し
ます。ス ク リ プ ト ビ ュ ーが ウ ィ ン ド ウ ペ イ ン タ に表示 さ れていない と
き は、 レ イ ア ウ ト ビ ューでオブジ ェ ク ト を ダブル ク リ ッ ク し て開 き ま
す。
ス ク リ プ ト ビ ュ ーには、 3 つの ド ロ ッ プダ
ウ ン リ ス ト ボ ッ ク ス があ り ます。
最初の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス には、 現在のオブジ ェ ク ト で利
用可能な コ ン ト ロ ールの リ ス ト お よ び特殊エ ン ト リ であ る 「Functions」
と 「Declare」 が表示 さ れてい ます。2 番目の ド ロ ッ プダ ウ ン リ ス ト ボ ッ
ク ス の内容は、 最初の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス で何を選択 し た
かに よ っ て変わ り ます。3 番目の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス には、
現在のオブジ ェ ク ト の先祖オブジ ェ ク ト が存在す る 場合は、 そのオブ
ジ ェ ク ト すべてが含ま れてい ます。
ス ク リ プ ト ビ ュ ーの使い方
最初の ド ロ ッ プ ダウン
リ ス ト ボ ッ ク スでの選
択
オブジ ェ ク ト ま たは コ
ン ト ロ ール名
Functions
Declare
1
82
2 番目の ド ロ ッ プ ダウン
リ ス ト ボ ッ ク スの内容
3 番目の ド ロ ッ プ ダウン
リ ス ト ボ ッ ク スの内容
選択 し た オ ブ ジ ェ ク ト 現在 の オ ブ ジ ェ ク ト と
ま た は コ ン ト ロ ー ル の そ の すべ て の 先祖 オ ブ
イ ベン ト の リ ス ト
ジェ ク ト
編集可能 な 関数 の リ ス 選択 し た 関数 と 同 じ 署
ト 。 編集可能な関数が存 名の関数を持つ、 すべて
在 し な い場合は、 「新 し の先祖オブジ ェ ク ト
い関数」 が表示 さ れ る
グ ロ ーバル、 共有、 お よ
び イ ン ス タ ン ス 変数 の
宣言型 の リ ス ト と ロ ー
カル外部関数
なし
レ イ アウ ト ビ ュ ーで、 一番上のシ ングルラ イ ン エデ ィ ッ ト コ ン ト ロール
を ダブルク リ ッ ク し ます。
PowerBuilder
レ ッ スン 3
ロ グ イ ン ウ ィ ン ド ウの作成
ス ク リ プ ト ビ ュ ーの 1 番目の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス にオ
ブジ ェ ク ト 名 sle_userid が表示 さ れ ます。
2
ス ク リ プ ト ビ ュ ーの 2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで Help イ
ベン ト を選択 し ます。
Help イ ベン ト のプ ロ ト タ イ プは次の と お り です。 help (integer
xpos, integer ypos) returns long [pbm_help]
3
ス ク リ プ ト 領域内に、 次の行を入力 し ます。
ShowPopupHelp("pbtutor.hlp", this, 100)
pbtutor.hlp フ ァ イ ルは、 Tutorial デ ィ レ ク ト リ 内にあ り ます。 2 番目
の引数は現在のシ ン グル ラ イ ン エデ ィ ッ ト コ ン ト ロ ールを、 最後
の引数は pbtutor.hlp フ ァ イ ルの コ ン テ キ ス ト ID を表 し ます。
ス ク リ プ ト ビ ュ ーにテ キ ス ト を入力す る と 、 入力 し た構文要素の
種類 (キー ワ ー ド 、 変数、 コ メ ン ト な ど) に よ っ て テ キ ス ト の色
が変わ り ます。
4
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スから
「sle_password」 を選択 し ます。
2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで Help イ ベン ト を選択 し ます。
sle_userid のシ ン グル ラ イ ン エデ ィ ッ ト テ キ ス ト ボ ッ ク ス の Help
イ ベン ト 用に入力 し た ス ク リ プ ト が、 コ ン パ イ ル さ れ ま す。 こ こ
で、 [sle_password] シ ン グル ラ イ ン エデ ィ ッ ト テキ ス ト ボ ッ ク ス
の Help イ ベン ト を追加 し ます。
5
ス ク リ プ ト 領域内に、 次の行を入力 し ます。
ShowPopupHelp("pbtutor.hlp", this, 200)
6
メ ニ ュ ー バーから [フ ァ イル|実行 / プ レ ビ ュ ー] を選択 し ます。
または
パワーバーの [オブ ジ ェ ク ト の実行 / プ レ ビ ュ ー] を ク リ ッ ク し ます。
実行ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ま す。 [オブジ ェ ク ト の種類]
リ ス ト ボ ッ ク ス に 「ウ ィ ン ド ウ」 が 表 示 さ れ て い る こ と と 、
w_welcome オブジ ェ ク ト が選択 さ れてい る こ と を確認 し ます。
PowerBuilder 入門
83
Help イ ベン ト の コ ーデ ィ ング と ウ ィ ン ド ウのプ レ ビ ュ ー
ウ ィ ン ド ウのプ レ ビ ュ ー
ス ク リ プ ト を 実行せずに ウ ィ ン ド ウ を プ レ ビ ュ ーす る には、 メ
ニ ュ ー バーの [デザ イ ン|プ レ ビ ュ ー] を選択す る か、 ペ イ ン タ
バー 1 (パ ワーバーの [オブジ ェ ク ト の実行 / プ レ ビ ュー] と 同 じ
ア イ コ ン) の [プ レ ビ ュ ー] ボ タ ン を ク リ ッ ク し ます。 ただ し 、 直
前に入力 し た Help イ ベン ト ス ク リ プ ト の結果を表示 し たい場合
は、 いずれの操作 も 使用 し ないで く だ さ い。
7
[OK] を ク リ ッ ク し ます。
変更内容を保存す る か ど う か を問い合わせ る メ ッ セージボ ッ ク ス
が表示 さ れます。
8
[はい] を ク リ ッ ク し ます。
ロ グ イ ン ウ ィ ン ド ウ の実行時の外観がプ レ ビ ュ ー表示 さ れ ま す。
ウ ィ ン ド ウ レ イ ア ウ ト を変更 し たい場合は、 ウ ィ ン ド ウ ペ イ ン タ
の ワ ー ク ス ペー ス に戻っ て、 ウ ィ ン ド ウ コ ン ト ロ ールのサ イ ズ、
配置、 フ ォ ン ト を変更で き ます。
9
ログ イ ン ウ ィ ン ド ウの タ イ ト ル バーで [?] ボ タ ン を ク リ ッ ク し ます。
シ ン グル ラ イ ン エ デ ィ ッ ト テ キ ス ト ボ ッ ク ス sle_userid の内側 を ク
リ ッ ク し ます。
「 こ こ にユーザー ID を入力 し ます。」 と い う メ ッ セージが表示 さ れま
す。 こ の メ ッ セージは、 pbtutor.hlp フ ァ イ ルの コ ン テ キ ス ト ID 100
に 対 応 し て い ま す。 こ の コ ン テ キ ス ト ID は、 Help イ ベ ン ト
sle_userid の ShowPopupHelp 関数の引数 と し て指定 し た も のです。
10 ウ ィ ン ド ウ内の任意の場所を ク リ ッ ク する と 、 メ ッ セージが閉 じ ます。
シ ングルラ イ ン エデ ィ ッ ト テキス ト ボ ッ ク ス sle_password の内側を ク
リ ッ ク し て、 〔F1〕 を押 し ます。
84
PowerBuilder
レ ッ スン 3
ロ グ イ ン ウ ィ ン ド ウの作成
「 こ こ にパスワー ド を入力 し ます。」 と い う メ ッ セージが表示 さ れます。
こ の メ ッ セージは、 pbtutor.hlp フ ァ イ ルの コ ン テ キ ス ト ID 200 に
対応 し てい ます。
11 ウ ィ ン ド ウ内の任意の場所を ク リ ッ ク する と 、 メ ッ セージが閉 じ ます。
ログ イ ン ウ ィ ン ド ウの タ イ ト ル バーで [閉 じ る] ボ タ ン を ク リ ッ ク し ま
す。
ウ ィ ン ド ウ ペ イ ン タ の ワー ク スペース に戻 り ます。
後で、 アプ リ ケーシ ョ ン を閉 じ る [キ ャ ン セル] ボ タ ン の Clicked
イ ベン ト に、 ス ク リ プ ト を追加 し ます。
12 ウ ィ ン ド ウ ペ イ ン タ を閉 じ ます。
PowerBuilder 入門
85
ログ イ ン ウ ィ ン ド ウ を開 く ス ク リ プ ト の記述
ログ イ ン ウ ィ ン ド ウ を開 く ス ク リ プ ト の記述
現在の学習個所
ウィ ン ド ウの新規作成
コ ン ト ロ ールの追加
ウィ ン ド ウのタ ブ 順序の変更
Help イ ベン ト のコ ーディ ン グと ウィ ン ド ウのプ レ ビ ュ ー
> ロ グイ ン ウィ ン ド ウを 開く スク リ プ ト の記述
こ の ス テ ッ プでは、 アプ リ ケーシ ョ ン起動開始の直後に ロ グ イ ン ウ ィ
ン ド ウ を 開 く ための、 ス ク リ プ ト を 追加 し ま す。 こ の ス ク リ プ ト は、
MDI フ レーム ウ ィ ン ド ウ の Open イ ベン ト に追加 し ます。 こ の ウ ィ ン
ド ウ (w_pbtutor_frame) は、 テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー
ド で作成 さ れた も のです。
MDI フ レームは、 アプ リ ケーシ ョ ン の Open イ ベン ト に よ っ て呼び出
さ れます。 し か し 、 ロ グ イ ン ウ ィ ン ド ウ は レ ス ポ ン ス ウ ィ ン ド ウ であ
る ため、 フ レーム ウ ィ ン ド ウ か ら ロ グ イ ン ウ ィ ン ド ウ を呼び出す と 、
フ レーム ウ ィ ン ド ウ よ り 先に表示 さ れた ま ま にな り ます。
こ の練習では、 以下の操作を行い ます。
86
•
フ レ ーム ウ ィ ン ド ウ の Open イ ベン ト の修正
•
ス ク リ プト のコ ン パイ ル
PowerBuilder
レ ッ スン 3
ロ グ イ ン ウ ィ ン ド ウの作成
フ レーム ウ ィ ン ド ウの Open イ ベン ト の修正
フ レーム ウ ィ ン ド ウ は、 アプ リ ケーシ ョ ン オブジ ェ ク ト の Open イ ベ
ン ト に よ っ て呼び出 さ れ ます。 こ こ で、 フ レーム ウ ィ ン ド ウ Open イ
ベ ン ト の ス ク リ プ ト を、 ロ グ イ ン ウ ィ ン ド ウ を 開 く よ う に修正 し ま
す。 ロ グ イ ン ウ ィ ン ド ウ は レ ス ポ ン ス ウ ィ ン ド ウ であ る ため、 フ レー
ム ウ ィ ン ド ウ よ り も 先に表示 さ れ た ま ま に な り ま す。 こ の た め、 フ
レーム ウ ィ ン ド ウ の Open イ ベン ト の ス ク リ プ ト は、(ユーザが応答す
る ま で一時的に) 処理がブ ロ ッ ク さ れます。
ウ ィ ザー ド で生成 さ れたス ク リ プ ト
フ レーム ウ ィ ン ド ウ の Open イ ベン ト には、 テ ン プ レー ト アプ リ ケー
シ ョ ン ウ ィ ザー ド に よ っ て生成 さ れた ス ク リ プ ト がすでに関連付け
ら れてい ま す。 こ の ス ク リ プ ト は、 シー ト ( ウ ィ ン ド ウ ) マネージ ャ
と し て機能す る ウ ィ ザー ド が生成 し た ユーザ オブ ジ ェ ク ト の イ ン ス
タ ン ス を作成 し ます。 その後で、 Open ス ク リ プ ト が ue_postopen イ ベ
ン ト を呼び出 し ます。
ue_postopen イ ベン ト は、 シー ト ウ ィ ン ド ウ を シー ト マネージ ャ に登
録 し ます。ue_postopen イ ベン ト は ウ ィ ン ド ウ の メ ッ セージ キ ュ ーの最
後にポ ス ト さ れ、 ( こ の レ ッ ス ン で追加 さ れた) Open ス ク リ プ ト の残
り が実行 さ れた後で処理 さ れます。
1
メ ニ ュ ー バーから [フ ァ イル|開 く ] を選択 し ます。
開 く ダ イ ア ロ グボ ッ ク スで、 以下の項目を選択す るか、 または選択 さ れ
ている項目を確認 し ます。
開 く ダ イ ア ログボ ッ ク スの
項目
選択 (確認) 項目
タ ーゲ ッ ト
ラ イブラ リ
pbtutor — 現在の唯一の タ ーゲ ッ ト
pbtutor.pbl — 現在の唯一の ラ イ ブ ラ リ
オブジ ェ ク ト の種類
オブジ ェ ク ト 名
ウィンドウ
w_pbtutor_frame
使用
ペイ ン タ
w_pbtutor_frame オブジ ェ ク ト は、 テ ン プ レー ト アプ リ ケーシ ョ ン
ウ ィ ザー ド で作成 さ れた アプ リ ケーシ ョ ン の メ イ ン ウ ィ ン ド ウ で
す。
2
PowerBuilder 入門
[OK] を ク リ ッ ク し ます。
87
ログ イ ン ウ ィ ン ド ウ を開 く ス ク リ プ ト の記述
ウ ィ ン ド ウ ペ イ ン タ が開 き、 ペ イ ン タ の ワ ー ク スペース にアプ リ
ケーシ ョ ンの メ イ ン ウ ィ ン ド ウ の ビ ュ ーが表示 さ れます。
ス ク リ プ ト ビ ュ ー が 開 い て い な い 場合、 ワ ー ク ス ペー ス の メ
ニ ュ ー バーで [ビ ュ ー| ス ク リ プ ト ] を選択す る か、 ま たは レ イ
ア ウ ト ビ ュ ーの内側を ダブル ク リ ッ ク し て開 き ます。
3
スク リ プ ト ビ ュ ーで Open イ ベン ト が表示さ れている こ と を 確認し ます。
ス ク リ プ ト ビ ュ ーの タ イ ト ル バーを ペ イ ン タ の背景に固定 さ せて表示 し
ます。
ス ク リ プ ト ビ ュ ーの タ イ ト ル バーに、 次の文字列が表示 さ れ ま
す。
ス ク リ プ ト w_pbtutor_frame の open の戻 り 値のデー タ 型は
Long です。
ス ク リ プ ト ビ ュ ーの ス ク リ プ ト コ ー ド の前に コ メ ン ト が記述 さ
れてい ます。
コ メ ン ト の使い方
PowerScript では、 2 つの方法で コ メ ン ト を あ ら わ し ます。 1 行の コ
メ ン ト には、 その行の先頭に ス ラ ッ シ ュ を 2 個 (//) を付け ます。
1 行ま たは複数行の コ メ ン ト には、先頭に ス ラ ッ シ ュ と ア ス タ リ ス
ク (/*) を、 末尾にア ス タ リ ス ク と ス ラ ッ シ ュ (*/) を付け ま す。
コ メ ン ト は、 コ ンパ イ ラ の解析の対象にはな り ません。
こ こ で、 ロ グ イ ン ウ ィ ン ド ウ を表示す る ための Open イ ベン ト の
ス ク リ プ ト を修正 し ます。
4
次に示す行の中にあ る カ ッ コ の後ろ に カ ー ソ ルを合わせて ク リ ッ ク し ま
す。
this.Post Event ue_postopen (
)
ue_postopen イ ベン ト は引数を と り ません。
88
PowerBuilder
レ ッ スン 3
5
ロ グ イ ン ウ ィ ン ド ウの作成
〔Enter〕 を 2 回押 し ます。
ス ク リ プ ト ビ ュ ーの中に空白行 を挿入 し て、 読みやす く し ま す。
カー ソ ルが空白行の次の行に移動 し ます。
6
ス ク リ プ ト ビ ュ ーで、 新 し い行に 「ログ イ ン ウ ィ ン ド ウを開 く 」 と 入力
し ます。
ペ イ ン タ バー 2 の [ コ メ ン ト ] ボ タ ン を ク リ ッ ク し ます。
入力 し た行の前に 2 個の ス ラ ッ シ ュ が表示 さ れ、 その行の ス ラ ッ
シ ュ 以降の領域が コ メ ン ト に変わ り ます。
7
〔Enter〕 を押 し て改行 し ます。
ス ク リ プ ト ビ ュ ーで、 次の行に 「open (w_welcome)」 と 入力 し ます。
こ の文は、 Open 関数を呼び出 し 、 作成 し た ロ グ イ ン ウ ィ ン ド ウ を
表示 し ます。
状況依存ヘルプへのア ク セス
状況依存ヘルプにア ク セ スす る には、 ス ク リ プ ト ビ ュ ーで関数や
予約語 (た と えば Open) を選択 し て 〔Shift〕 + 〔F1〕 を押 し ます。
〔F1〕 を押す と 、状況に関係な く 常に メ イ ン ヘルプ画面が開 き ます。
PowerBuilder 入門
89
ログ イ ン ウ ィ ン ド ウ を開 く ス ク リ プ ト の記述
ス ク リ プ ト の コ ンパイル
こ こ では、 入力 し た ス ク リ プ ト を コ ン パ イ ル し ま す。 PowerBuilder で
は、 ス ク リ プ ト ビ ューを閉 じ た と き や、 ス ク リ プ ト ビ ューで別のオブ
ジ ェ ク ト 、 イ ベン ト 、 ま たは関数を選択 し た と き に、 自動的に ス ク リ
プ ト が コ ンパ イ ル さ れます。
こ の ス テ ッ プでは、 ス ク リ プ ト ビ ューを閉 じ た り 別の ス ク リ プ ト に変
更 し た り せず、 ポ ッ プア ッ プ メ ニ ューの項目を使用 し て ス ク リ プ ト を
コ ンパ イ ル し ます。
ス ク リ プ ト のエ ラ ー処理
ス ク リ プ ト にエ ラ ーがあ る 場合は、 ス ク リ プ ト ビ ュ ーの下部にエ ラ ー
ウ ィ ン ド ウ が開 き、 エ ラ ー番号 と エ ラ ー メ ッ セージが表示 さ れます。
エ ラ ー メ ッ セージ を ク リ ッ ク す る と 、 エ ラ ーの
あ る 行にカー ソ ルが移動 し ま す。 エ ラ ーを修正 し た ら 、 ス ク リ プ ト の
コ ンパ イ ルを再試行 し ます。
エ ラ ーを見つけるには
エ ラ ーのコ メ ン ト 化 PowerBuilder では、 エ ラ ーの あ る ス ク リ プ ト は保
存 さ れ ません。 エ ラ ーのあ る ス ク リ プ ト を保存す る には、 その ス ク リ
プ ト 全体を選択 し て、 [ コ メ ン ト ] ボ タ ン を ク リ ッ ク し ます。 こ う し て
保存 し ておい た ス ク リ プ ト は、 後で開い て、 コ メ ン ト を外 し てか ら 、
エ ラ ー箇所を修正 し ます。
1
ス ク リ プ ト ビ ュ ーの ス ク リ プ ト 領域内の任意の場所 を 右 ク リ ッ ク し ま
す。
ポ ッ プ ア ッ プ メ ニ ュ ーで [コ ンパイル] を選択 し ます。
ス ク リ プ ト が コ ンパ イ ル さ れます。こ の と き に、ス ク リ プ ト ビ ュ ー
ま たは ウ ィ ン ド ウ ペ イ ン タ の ワ ー ク スペース を閉 じ た り 、 ほかの
ビ ューに移動 し た り し ないで く だ さ い。
2
メ ニ ュ ー バーか ら [フ ァ イル|上書き保存] を選択 し ます。
メ ニ ュ ー バーか ら [フ ァ イル|閉 じ る] を選択 し ます。
ウ ィ ン ド ウ ペ イ ン タ が閉 じ ます。
90
PowerBuilder
レ ッ ス ン 4
デー タ ベースへの接続
こ の レ ッ ス ン では、 実行時にアプ リ ケーシ ョ ン を エ ン タ ープ ラ イ
ズ アプ リ ケーシ ョ ン サ ンプル (EAS Demo DB) デー タ ベース に接
続す る ための ス ク リ プ ト を記述 し ます。 ま た、 デー タ ベース ペ イ
ン タ を使用 し てテーブル定義を参照 し た り 、 EAS Demo DB デー タ
ベース のデー タ ベース プ ロ フ ァ イ ルを参照 し ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
EAS Demo DB デー タ ベース の参照
•
接続オブジ ェ ク ト ウ ィ ザー ド の実行
•
グ ロ ーバル変数の宣言
•
接続情報の変更
•
ロ グ イ ンお よ び ロ グ ア ウ ト ス ク リ プ ト の完了
•
アプ リ ケーシ ョ ン の実行
所要時間
約 25 分
PowerBuilder 入門
91
EAS Demo DB デー タ ベースの参照
EAS Demo DB デー タ ベースの参照
現在の学習個所
> EAS Demo DB デー タ ベースの参照
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
グローバル変数の宣言
接続情報の変更
ログ イ ンおよびログアウ ト ス ク リ プ ト の完了
ア プ リ ケーシ ョ ンの実行
多 く の企業には、 デー タ ベース 専門の管理者がい ます。 組織内にデー
タ ベー ス管理者がいれば、 デー タ ベース内にテーブルを作成 し て管理
す る必要はないか も し れ ません。 し か し 、 こ こ では PowerBuilder の機
能を フルに活用す る ために、デー タ ベース での作業方法を説明 し ます。
ODBC Administrator な ど のデー タ ベース接続ユー
テ ィ リ テ ィ を使用 し て、 デー タ ベース をデー タ ソ ース と し て定義で き
ます。 ODBC Administrator には DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス
か ら ア ク セ ス で き ます。 ODBC デー タ ソ ース の定義は、 odbc.ini レ ジ ス
ト リ キーに記述 さ れてい ます。
デー タ ソ ースの定義
デー タ ベース プ ロ フ ァ イルを使用 し た接続 い っ た んデー タ ソ ー ス を 定
義 し た ら 、そのデー タ ソ ース用のデー タ ベース プ ロ フ ァ イ ルを作成で
き ます。 デー タ ベース プ ロ フ ァ イ ル と は、 あ る特定のデー タ ソ ース ま
たはデー タ ベー ス と の接続 を 行 う 際に指定す る パ ラ メ ー タ セ ッ ト の
こ と です。 デー タ ベース プ ロ フ ァ イ ルを使用すれば、 使用頻度の高い
デー タ ベー ス 接続の管理 を 容易に行 う こ と が で き ま す。 ア プ リ ケ ー
シ ョ ン の開発中にデー タ ベー ス プ ロ フ ァ イ ル を 変更 し て ほかのデー
タ ソ ース に接続で き ます。
デザ イ ン 時 ま た は実行時の環境のいずれ
かでデー タ ベー ス への接続を確立で き ま す。 PowerBuilder は、 ペ イ ン
タ を開 く と き や、 埋め込み SQL 文を含むス ク リ プ ト を コ ンパ イ ル ま た
は保存す る と き、 あ る いはデー タ ベー ス に ア ク セ ス す る ア プ リ ケ ー
シ ョ ン を実行す る と き にデー タ ベースへの接続を行い ます。
デー タ ベース接続を行 う 時期
PowerBuilder でデー タ ベー ス 定義 を 管理す る には、 ほ と ん ど の場合
デー タ ベース ペ イ ン タ を使用 し ます。デー タ ベース ペ イ ン タ では以下
の操作が行え ます。
92
•
テーブルの作成、 変更、 削除
•
主キー と 外部キーの作成、 変更、 削除
•
イ ンデ ッ ク ス キーの作成、 削除
PowerBuilder
レ ッ スン 4
•
カ ラ ムの拡張属性の定義、 修正
•
ビ ュ ーの削除
デー タ ベースへの接続
こ の練習では、 以下の操作を行い ます。
•
EAS Demo DB デー タ ベース プ ロ フ ァ イ ルの参照
•
EAS Demo DB デー タ ベース のテーブル定義の参照
EAS Demo DB デー タ ベース プ ロ フ ァ イルの参照
標準オ プ シ ョ ン で PowerBuilder を イ ン ス ト ール し た場合は、 すで に
EAS Demo DB デー タ ベー ス 用に定義 さ れたデー タ ソ ー ス と デー タ
ベース プ ロ フ ァ イ ルがあ り ます。 こ のチ ュ ー ト リ アルでは、EAS Demo
DB デー タ ベース を使用 し ます。
EAS Demo DB デー タ ベース は、ODBC を介 し てア ク セ スす る Adaptive
Server Anywhere です。 こ の レ ッ ス ン では、 EAS Demo DB デー タ ベー
ス のデー タ ベース プ ロ フ ァ イ ルを調べます。デー タ ベース プ ロ フ ァ イ
ルのパ ラ メ ー タ は、 レ ジ ス ト リ 内に保持 さ れます。
1
パワーバーの [DB プ ロ フ ァ イル] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [ツール| DB プ ロ フ ァ イル] を選択 し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ま す。 DB プ ロ
フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス には、 イ ン ス ト ール し たデー タ ベー
ス イ ン タ フ ェ ー ス と 各 イ ン タ フ ェ ー ス で定義 し たデー タ ベー ス
プ ロ フ ァ イ ルが ツ リ ー形式で表示 さ れてい ます。
2
EAS Demo DB V9 を選択 し ます。
こ のプ ロ フ ァ イ ルは、 イ ン ス ト ール時に作成 さ れます。
PowerBuilder 入門
93
EAS Demo DB デー タ ベースの参照
EAS Demo DBV9 デー タ ベース プ ロ フ ァ イルが表示 さ れない場合
EAS Demo DBV9 デー タ ベース のプ ロ フ ァ イ ルがない場合は、デー
タ ベー ス を イ ン ス ト ール し て い な い可能性が あ り ま す。 イ ン ス
ト ールは、 製品 CD-ROM か ら 行 う こ と がで き ます。
EAS Demo DB V9 デー タ ベー ス を イ ン ス ト ー ル し 、 ODBC
Administrator でデー タ ソ ース と し て定義 し てい る 場合は、 デー タ
ベース プ ロ フ ァ イ ル ペ イ ン タ のツ リ ー ビ ューか ら 「ODB ODBC」
を選択 し て、 [新規作成] を ク リ ッ ク し ます。 DB プ ロ フ ァ イ ル設
定ダ イ ア ロ グ ボ ッ ク ス で、 [デー タ ソ ース] ド ロ ッ プダ ウ ン リ ス
ト ボ ッ ク ス か ら デー タ ソ ース を選択 し 、 [プ ロ フ ァ イ ル名] テ キ ス
ト ボ ッ ク ス に 「EAS Demo DB V9」 と 入力 し ま す。 ユ ー ザ ID に
「dba」 、 パ ス ワ ー ド に 「sql」 と 入力 し 、 [OK] を ク リ ッ ク し てペ
イ ン タ に戻 り ます。
94
PowerBuilder
レ ッ スン 4
3
デー タ ベースへの接続
[編集] を ク リ ッ ク し ます。
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [接続] ページが表
示 さ れます。
4
[プ レ ビ ュ ー] タ ブ を ク リ ッ ク し ます。
選択 し た各オプシ ョ ン の接続構文が [プ レ ビ ュ ー] タ ブに表示 さ
れ ます。 オプシ ョ ン を変更す る と 、 構文 も 変わ り ます。
5
[接続のテス ト ] ボ タ ン を ク リ ッ ク し ます。
接続に成功 し た こ と を通知す る メ ッ セージ ボ ッ ク ス が表示 さ れま
す。
PowerBuilder 入門
95
EAS Demo DB デー タ ベースの参照
接続に失敗 し た と い う メ ッ セージ ボ ッ ク スが表示 さ れた場合
メ ッ セージ ボ ッ ク ス を閉 じ て、 DB プ ロ フ ァ イ ル設定ダ イ ア ロ グ
ボ ッ ク ス の [接続] ページ の内容が正 し い こ と を 確認 し て か ら 、
ODBC Administrator のデー タ ソ ース の設定内容をチ ェ ッ ク し て く
だ さ い。
6
[OK] を ク リ ッ ク し て、 メ ッ セージ ボ ッ ク ス を閉 じ ます。
[キ ャ ン セル] を ク リ ッ ク し て、 DB プ ロ フ ァ イル設定 ダ イ ア ログボ ッ ク
ス を閉 じ ます。
[閉 じ る] を ク リ ッ ク し て、 DB プ ロ フ ァ イル ダ イ ア ログボ ッ ク ス を閉 じ
ます。
EAS Demo DB デー タ ベースのテーブル定義の参照
こ の ス テ ッ プでは、 EAS Demo DB デー タ ベース の顧客情報 (customer)
テーブル と 商品管理 (product) テーブルの定義を参照 し ます。 こ れに
よ り 、 デー タ ベース ペ イ ン タ と チ ュー ト リ アルで使用す る テーブルに
ついて よ く 理解で き ます。
テーブル定義を参照す る には、 デー タ ベース に接続
す る 必要があ り ます。 開発環境でデー タ ベース 環境に接続す る と 、 接
続パ ラ メ ー タ が Windows レ ジ ス ト リ に書 き込ま れます。
接続時の処理内容
異な る デー タ ベー ス に接続す る たびに、 レ ジ ス ト リ 内の既存の接続パ
ラ メ ー タ が新 し いデー タ ベー ス の接続パ ラ メ ー タ に置 き 換え ら れ ま
す。 デー タ ベース にア ク セ スす る PowerBuilder ペ イ ン タ を開 く と 、 最
後に使用 し たデー タ ベース に自動的に接続 さ れ ます。 PowerBuilder は、
レ ジ ス ト リ の読み出 し に よ り 、 最後に使用 し たデー タ ベース を特定 し
ます。
1
パワーバーの [デー タ ベース] ボ タ ン を ク リ ッ ク し ます
PowerBuilder がデー タ ベー ス に接続 し 、 デー タ ベース ペ イ ン タ が
開 き ます。 デー タ ベース ペ イ ン タ の タ イ ト ル バーにア ク テ ィ ブな
デー タ ベース接続が表示 さ れます。
96
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
デー タ ベース ペ イ ン タ のオブジ ェ ク ト ビ ューで、「使用で き る DB
イ ン タ フ ェ ース」 と い う ヘ ッ ダの下に、 既存の全デー タ ベース プ
ロ フ ァ イ ルが ツ リ ー形式で表示 さ れてい ま す。 ツ リ ー ビ ュ ーで項
目の横にあ る + 記号を ク リ ッ ク す る か、 ア イ コ ン を ダブル ク リ ッ
ク し て、ツ リ ー ビ ュ ーの ノ ー ド を開いた り 閉 じ た り で き ます。EAS
Demo DB V9 デー タ ベース は、ツ リ ー ビ ュ ーの ODB ODBC ノ ー ド
の下に表示 さ れます。
オブ ジ ェ ク ト ビ ュ ーが開いていない場合
オブジ ェ ク ト ビ ュ ーは、 デフ ォ ル ト のビ ュ ー レ イ ア ウ ト の一部で
す。 こ の ビ ュ ー レ イ ア ウ ト 構成を リ セ ッ ト す る には、 [ビ ュ ー|レ
イ ア ウ ト | (デフ ォ ル ト )] を選択 し ます。 ま た、 メ ニ ュ ー バーか
ら [ビ ュ ー|オブジ ェ ク ト ] を選択 し て、 オブジ ェ ク ト ビ ュ ーを
開 く こ と も で き ます。
2
オブ ジ ェ ク ト ビ ュ ーで、EAS Demo DBV9 デー タ ベース ノ ー ド を展開 し
ます。
EAS Demo DBV9 デー タ ベー ス ノ ー ド の下にあ る フ ォ ルダ を確認
し ます。
3
テーブル フ ォルダ を開き ます。
デー タ ベース にあ る テーブルが リ ス ト 表示 さ れ ます。
PowerBuilder 入門
97
EAS Demo DB デー タ ベースの参照
テーブル名には接頭辞を付ける こ と がで き ます。
テーブルの選択 ダ イ ア ロ グ ボ ッ ク ス のテーブル名に付け ら れ る 接
頭辞 と し ては、 dba や dbo な ど があ り ます。 テーブル名に付け ら れ
る 接頭辞は、 使用 し てい る ロ グ イ ン ID に よ っ て異な り ます。 接頭
辞は無視 し て も か ま い ません。
4
「customer」 テーブルを右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーの [レ
イ アウ ト に追加] を選択 し ます。
または
オ ブ ジ ェ ク ト ビ ュ ーか ら 「customer」 テ ー ブル を ド ラ ッ グ し て、 オ ブ
ジ ェ ク ト レ イ アウ ト ビ ュ ーに ド ロ ッ プ し ます。
現在のビ ュ ーから ほかのビ ュ ーにオブ ジ ェ ク ト を ド ラ ッ グする方法
オブ ジ ェ ク ト ビ ュ ーか ら ほかの ビ ュ ーへの ド ラ ッ グ を始め る と 、
ポ イ ン タ の形状が斜線入 り の円に変わ り ま す。 オブジ ェ ク ト を ド
ロ ッ プで き る ほかの ビ ュ ー ま で そ の ま ま カー ソ ル を 移動す る と 、
斜線入 り の円がポ イ ン タ の形に戻 り 、 小 さ なボ ッ ク ス の中に新 し
い矢印が表示 さ れ ま す。 こ の矢印が表示 さ れた ら 、 オブジ ェ ク ト
を ド ロ ッ プす る こ と がで き ます。
5
手順 4 を繰 り 返 し て、 product テーブルについて も 同 じ 作業を行います。
オブ ジ ェ ク ト レ イ アウ ト ビ ュ ーの拡大
オブジ ェ ク ト レ イ ア ウ ト ビ ュ ーは、分割バーをペ イ ン タ フ レーム
の方へ ド ラ ッ グ し て幅を広げ る こ と がで き ます。 オブジ ェ ク ト レ
イ ア ウ ト ビ ュ ーが ス タ ッ ク の一部の場合、 サ イ ズ を変更す る 前に
ス タ ッ ク か ら 切 り 離 し たほ う が簡単な場合 も あ り ます。
オブジ ェ ク ト レ イ ア ウ ト ビ ュ ーに、 2 つのテーブルが表示 さ れま
す。
98
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
テーブルのデー タ 型、 コ メ ン ト 、 キー、 および イ ンデ ッ ク スの表示
オブ ジ ェ ク ト レ イ ア ウ ト ビ ュ ーには、 各カ ラ ム について の説明
と 、 キーお よ び イ ンデ ッ ク ス のア イ コ ン が表示 さ れ ま す。 こ のア
イ コ ン が表示 さ れない場合は、 ビ ュ ー内の空白の領域を右 ク リ ッ
ク し 、 ポ ッ プア ッ プ メ ニ ュ ーか ら [ コ メ ン ト の表示] と [参照整
合性の表示] を選択 し てか ら 、 [ イ ンデ ッ ク ス の表示] を選択 し ま
す。 [デー タ タ イ プの表示] を選択 し ない と 、 選択 さ れてい る テー
ブル内にあ る各カ ラ ム のデー タ 型は表示 さ れ ません。
6
オブ ジ ェ ク ト レ イ アウ ト ビ ュ ーで customer テーブルの タ イ ト ルバーを
右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーの [テーブルの変更] を選択 し
ます。
または
オブ ジ ェ ク ト ビ ュ ーで customer テーブルを右ク リ ッ ク し て、ポ ッ プ ア ッ
プ メ ニ ュ ーの [テーブルの変更] を選択 し ます。
カ ラ ム ビ ュ ーに、 テーブルのカ ラ ム定義が表示 さ れ ます。
7
オブ ジ ェ ク ト レ イ アウ ト ビ ュ ーで、 customer テーブルのカ ラ ムを右ク
リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーから [プ ロパテ ィ ] を選択 し ます。
デー タ ベース ペ イ ン タ のプ ロ パテ ィ ビ ュ ーは、 オブジ ェ ク ト の詳
細ビ ュー と も 呼ばれます。
オブジ ェ ク ト の詳細 ビ ュ ーの タ イ ト ル バー と タ ブ ヘ ッ ダは、ど の
オブジ ェ ク ト を選択 し てい る かに よ っ て ま っ た く 異な り ま す。 タ
イ ト ル バーには、 オブジ ェ ク ト の種類、 デー タ ベース接続、 お よ
びオブジ ェ ク ト の識別子が表示 さ れます。
PowerBuilder 入門
99
EAS Demo DB デー タ ベースの参照
カ ラ ム のオブ ジ ェ ク ト の詳細 ビ ュ ーには 5 つの タ ブがあ り ま す。
通常のデー タ ベー ス のプ ロ パテ ィ 全般に関す る も のが 1 つ、 カ ラ
ム のヘ ッ ダ情報に関す る も の、 そのほかの タ ブはカ ラ ム の拡張属
性に関す る も のです。
拡張属性について
PowerBuilder では、デー タ ベース のシ ス テ ム テーブルの集ま り ( リ
ポ ジ ト リ ) に拡張属性情報を格納 し ま す。 拡張属性 と は、 カ ラ ム
のヘ ッ ダ と ラ ベル、 カ ラ ム の初期値、 入力条件則、 表示書式の こ
と をいい ます。
デー タ ベース ペ イ ン タ の拡張属性ビ ュ ーで、 項目のポ ッ プア ッ プ
メ ニ ュ ーか ら 、 新 し い拡張属性を定義 し た り 、 既存の拡張属性の
定義を変更で き ます。
8
100
デー タ ベース ペ イ ン タ を閉 じ ます。
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
現在の学習個所
EAS Demo DB デー タ ベースの参照
> 接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
グローバル変数の宣言
接続情報の変更
ログ イ ンおよびログアウ ト ス ク リ プ ト の完了
ア プ リ ケーシ ョ ンの実行
こ の ス テ ッ プでは、 接続オブジ ェ ク ト ウ ィ ザー ド を実行 し て、 実行時
のデー タ ベー ス 接続の確立に使用す る 接続サー ビ ス マ ネージ ャ を 作
成 し ます。
接続サービ ス マネージ ャ は、 非ビ ジ ュ アル ユーザ オブジ ェ ク ト です。
「非ビ ジ ュ アル」 と は実行時に グ ラ フ ィ ッ ク で表示 さ れない こ と を 示
し 、 「ユーザ オブジ ェ ク ト 」 と はユーザによ っ てカ ス タ マイ ズさ れてい
る こ と を 示し ま す。 接続サービ ス マネージャ は、 PowerBuilder アプ リ
ケーシ ョ ン でのデー タ ベース接続処理を実行す る ために使用 し ます。
2 番目のウ ィ ザー ド を実行する理由
テ ンプ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド で接続情報を指定し ていた
場合は、アプ リ ケーシ ョ ンの生成時に接続サービ ス マネージ ャ を作成し
ます。 アプ リ ケーシ ョ ンの構築には複数のウ ィ ザー ド を使用で き ます。
1
パワーバーの [To-Do リ ス ト ] ボ タ ン を ク リ ッ ク し ます。
す る と 、 To-Do リ ス ト がテ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー
ド に よ っ て生成 さ れ ます。
PowerBuilder 入門
101
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
2
リ ス ト 内の接続オブ ジ ェ ク ト ウ ィ ザー ド を実行 し 、 追加の接続オブ ジ ェ
ク ト を作成する項目を ダブルク リ ッ ク し ます。
または
接続オブ ジ ェ ク ト ウ ィ ザー ド を実行 し 、 追加の接続オ ブ ジ ェ ク ト を作成
する項目を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーの [ リ ン ク先へ] を選択 し ます。
こ れは、 リ ス ト 内の最後か ら 2 番目の項目です。 To-Do リ ス ト に、
アプ リ ケーシ ョ ン を完成 さ せ る ための必要事項が一覧表示 さ れ ま
す。 こ の リ ス ト を使用 し て、 自分自身やほかのアプ リ ケーシ ョ ン
開発者への コ メ ン ト を付け る こ と も で き ます。
新規作成ダ イ ア ロ グ ボ ッ ク ス の [PB オブジ ェ ク ト ] ページか ら 接
続オブジ ェ ク ト ウ ィ ザー ド を実行す る こ と も で き ます。 新規作成
ダ イ ア ロ グ ボ ッ ク ス か ら テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ
ザー ド を実行す る方法については、 レ ッ ス ン 1 「PowerBuilder の起
動」 で説明 さ れてい ます。
ウ ィ ザー ド の最初のページには、 実行可能な作業に関す る 説明が
あ り ます。
3
デー タ ベース プ ロ フ ァ イルの選択ページが表示 さ れる まで [次へ] を ク
リ ッ ク し ます。
格納先 ラ イ ブ ラ リ (pbtutor.pbl) と デー タ ベース コ ネ ク テ ィ ビ テ ィ
オプ シ ョ ン (SQL) は、 ウ ィ ザー ド に よ り デ フ ォ ル ト で選択 さ れ
た値を その ま ま使用 し て く だ さ い。 デー タ ベース プ ロ フ ァ イ ルの
選択ペー ジ に、 レ ジ ス ト リ 内に保存 さ れ て い る すべ て のデー タ
ベース プ ロ フ ァ イ ルが一覧表示 さ れます。
4
「EAS Demo DB V9」 がまだ選択 さ れていない場合は、 [デー タ ベース プ
ロ フ ァ イル] リ ス ト ボ ッ ク スから 選択 し ます。
PowerBuilder を イ ン ス ト ール し た時点では、 こ のデー タ ベー ス プ
ロ フ ァ イ ル し か一覧表示 さ れません。
5
接続オブ ジ ェ ク ト の作成準備完了ページが表示 さ れる ま で、 [次へ] を ク
リ ッ ク し ます。
以下の項目についてデフ ォ ル ト の設定を確認 し ます。
102
PowerBuilder
レ ッ スン 4
ウ ィ ザー ド ページ
接続 ソ ース情報の
指定
アプ リ ケーシ ョ ン
の INI フ ァ イ ルの
指定
オプ シ ョ ン
接続情報の取得元
接続サービ ス オブジ ェ
クト
アプ リ ケーシ ョ ン INI
フ ァ イル
デー タ ベースへの接続
デ フ ォル ト 設定
アプ リ ケーシ ョ ン INI
フ ァ イル
n_pbtutor_connectservice
pbtutor.ini
ウ ィ ザー ド は、 デー タ ベース接続の管理用にユーザ オブジ ェ ク ト
n_pbtutor_connectservice を作成 し ます。 こ のオブジ ェ ク ト の イ ン ス
タ ン ス 変数を変更す る と 、 接続情報の ソ ー ス を レ ジ ス ト リ ま たは
ス ク リ プ ト フ ァ イ ルに変更で き ます。それ以外の場合は、ウ ィ ザー
ド で作成 し た pbtutor.ini フ ァ イ ルが ア プ リ ケーシ ョ ン の接続情報
と し て使用 さ れ ます。
最後の ウ ィ ザー ド ページに、 ウ ィ ザー ド で選択 し た内容 (デフ ォ
ル ト の も の も 含む) の ま と めが表示 さ れ ます。
6
[完了] ボ タ ン を ク リ ッ ク し ます。
接続サービ ス オブジ ェ ク ト が、 ウ ィ ザー ド に よ っ て作成 さ れ、 開
き ま す。 それ以外に、 アプ リ ケーシ ョ ン の INI フ ァ イ ル も 作成 さ
れ ます。 To-Do リ ス ト は開いた ま ま です。
7
PowerBuilder 入門
To-Do リ ス ト を閉 じ ます。
103
グローバル変数の宣言
グ ローバル変数の宣言
現在の学習個所
EAS Demo DB デー タ ベースの参照
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
> グローバル変数の宣言
接続情報の変更
ログ イ ンおよびログアウ ト ス ク リ プ ト の完了
ア プ リ ケーシ ョ ンの実行
次の ス テ ッ プでは、 新 し い接続サービ ス マネージ ャ を検証 し て、 参照
す る グ ロ ーバル変数を作成 し ます。グ ロ ーバル変数は、アプ リ ケーシ ョ
ン のすべてのオブジ ェ ク ト に対 し て有効です。
複雑な ア プ リ ケーシ ョ ン では、 ロ ーカル変数で接続サー ビ ス マ ネー
ジ ャ を参照 し たほ う が よ い場合 も あ り ま す。 そ う すれば、 ロ ーカル変
数が ス コ ープか ら 出た と き に、 よ り 多 く の メ モ リ が解放 さ れ ます。 し
か し こ のチ ュ ー ト リ アルでは、 デー タ ベー ス 接続が開いてい る 限 り 、
接続サービ ス マネージ ャ の イ ン ス タ ン ス を利用で き る よ う に し ます。
ア プ リ ケーシ ョ ン が実行時にデー タ ベー ス に接続で き る
よ う にす る ために、 接続サービ ス マネージ ャ は、 ウ ィ ザー ド で生成 し
た関数を呼び出 し て、 アプ リ ケーシ ョ ン と デー タ ベー ス の間の通信領
域 と し て機能す る ト ラ ン ザ ク シ ョ ン オブ ジ ェ ク ト のプ ロ パテ ィ を 設
定 し ます。
接続の確立
接続サービ ス マネージ ャ は、 組
み込 み の- 非 ビ ジ ュ ア ル シ ス テ ム オ ブ ジ ェ ク ト 、 SQL 通 信領 域
(SQLCA) オブジ ェ ク ト を、 デフ ォ ル ト の ト ラ ン ザ ク シ ョ ン オブジ ェ
ク ト と し て使用 し ます。 SQLCA オブジ ェ ク ト には、 い く つかのプ ロ パ
テ ィ (デー タ ベース名、 ロ グ イ ン ID、 お よ びパ ス ワー ド を含む) が接
続サービ ス マネージ ャ に よ っ てデフ ォ ル ト で設定 さ れてい ます。
SQLCA ト ラ ンザク シ ョ ン オブ ジ ェ ク ト
アプ リ ケーシ ョ ン が複数のデー タ ベース と 通信す る 場合は、 必要であ
れば、 デー タ ベース接続ご と に 1 つの ト ラ ン ザ ク シ ョ ン オブジ ェ ク ト
を作成で き ます。
104
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
必要な もの と 省略可能な もの
デー タ ベー ス への接続には ト ラ ン ザ ク シ ョ ン オブ ジ ェ ク ト が必要で
す。 接続サービ ス マネージ ャ は接続自体に必要な も のではあ り ません
が、 ト ラ ンザ ク シ ョ ン オブジ ェ ク ト のプ ロ パテ ィ を自動的に生成す る
ため、 こ のチ ュ ー ト リ アルでは使用 し ます。 接続サービ ス マネージ ャ
がない場合、 アプ リ ケーシ ョ ン の ス ク リ プ ト でプ ロ パテ ィ を直接入力
し なければな り ません。
1
ユーザ オブ ジ ェ ク ト ペ イ ン タ の 「n_pbtutor_connectservice」 が開いて
いる こ と を確認 し ます。
接続サービ ス マネージ ャ を開 く
ユーザ オブジ ェ ク ト ペ イ ン タ の n_pbtutor_connectservice オブジ ェ
ク ト が開いていない場合は、 シ ス テ ム ツ リ ーの
「n_pbtutor_connectservice」 を ダブル ク リ ッ ク し て く だ さ い。
こ のペ イ ン タ の場合、 デフ ォ ル ト のビ ュ ー レ イ ア ウ ト 構成に、 タ
ブ付 き ペ イ ン の ス タ ッ ク の一部 と し ての ス ク リ プ ト ビ ュ ー と イ ン
ス タ ン ス変数の宣言ビ ュ ーが含ま れてい ます。
2
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダウン リ ス ト ボ ッ ク ス内で
「n_pbtutor_connectservice」 が選択 さ れている こ と を確認 し ます。
2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで Constructor イ ベン ト が選択
さ れている こ と を確認 し ます。
ス ク リ プ ト ビ ュ ーに、 接続オブ ジ ェ ク ト ウ ィ ザー ド で作成 し た
Constructor イ ベン ト の ス ク リ プ ト が表示 さ れます。
PowerBuilder 入門
105
グローバル変数の宣言
ス ク リ プ ト は、 of_GetConnectionInfo 関数を呼び出 し て、 接続情報
を取得 し ます。 次に、 こ の関数の ス ク リ プ ト を参照 し ます。
3
スク リ プ ト ビ ュ ーの最初のド ロ ッ プダウン リ スト ボッ ク スで「Functions」
を選択 し ます。
2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「of_GetConnectionInfo」 を
選択 し ます。
こ の関数の ス ク リ プ ト は、 デー タ ベー ス 接続情報を接続サービ ス
マネージ ャ の Constructor イ ベ ン ト に渡 し ま す。 渡 さ れ る 情報は、
イ ン ス タ ン ス変数に よ って異な り ます。こ こ では、is_connectionfrom
変数の値は 1 です。 こ れを確認 し ま す。 イ ン ス タ ン ス 変数は、 す
べての関数お よ び n_pbtutor_connectservice オブ ジ ェ ク ト のすべて
の イ ベン ト に対 し て有効です。
is_connectfrom 変数が 1 であ る ため、 接続サービ ス マネージ ャ は、
INI フ ァ イ ルの [デー タ ベース] セ ク シ ョ ン を参照 し 、 ProfileString
関数呼び出 し でデー タ ベース接続情報を取得 し ます。 こ こ では、指
定 し た INI フ ァ イ ルは pbtutor.ini です。 こ の pbtutor.ini フ ァ イ ルは、
前の ス テ ッ プで 接続オブ ジ ェ ク ト ウ ィ ザー ド を使用 し て作成 し
た も のです。
こ の後の ス テ ッ プ で、 pbtutor.ini フ ァ イ ル と of_GetConnectionInfo
関数を変更 し 、 ユーザ ID と パ ス ワー ド 情報を INI フ ァ イ ルではな
く ロ グ イ ン ウ ィ ン ド ウ か ら 取得す る よ う に し ます。
4
2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「of_ConnectDB」 を選択 し ま
す。
こ れは、SQLCA ト ラ ンザ ク シ ョ ン オブジ ェ ク ト を使用 し て実際に
デー タ ベース に接続す る 接続サービ ス マネージ ャ の関数です。 こ
の関数は、 レ ッ ス ン 3 「 ロ グ イ ン ウ ィ ン ド ウ の作成」 で作成 し た
ロ グ イ ン ウ ィ ン ド ウ か ら 呼び出す こ と がで き ます。
ウ ィ ザー ド で生成 さ れた こ の関数の ス ク リ プ ト には、 デー タ ベー
ス接続が失敗 し た場合に メ ッ セージ ボ ッ ク ス を表示す る こ と も 記
述 さ れてい ます。
5
2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「of_DisconnectDB」 を選択
し ます。
こ れは、デー タ ベース接続を解除す る ための、接続サービ ス マネー
ジ ャ の関数です。 こ の関数は、 アプ リ ケーシ ョ ン の Close イ ベン ト
か ら 呼び出す こ と がで き ます。
106
PowerBuilder
レ ッ スン 4
6
デー タ ベースへの接続
[イ ン ス タ ン ス変数の宣言] タ ブ を ク リ ッ ク し ます。
2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで 「Instance Variables」 が選択
さ れている こ と を確認 し ます。
ス ク リ プ ト ビ ュ ーでの 「Declare」 の選択
イ ン ス タ ン ス変数の宣言 ビ ューは、 ス ク リ プ ト ビ ュ ーの特殊な イ
ン ス タ ン ス です。 ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダ ウ ン リ ス
ト ボ ッ ク ス で 「Declare」 を選択す る と 表示 さ れます。 2 番目の ス ク
リ プ ト ビ ュ ーにすで に イ ン ス タ ン ス 変数が表示 さ れ て い る 場合
は、 「Declare」 を選択で き ません。
こ こ で、 is_connectionfrom 変数の値が 1 であ る こ と が分か り ます。
7
2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで 「Global Variables」 を選択 し
ます。
シ ス テム ツ リ ーの 「n_pbtutor_connectservice」 を ス ク リ プ ト ビ ュ ーに
ド ラ ッ グ し ます。
シ ス テ ム ツ リ ーのオブ ジ ェ ク ト 名 と 関数名 を ス ク リ プ ト ビ ュ ー
に ド ラ ッ グす る と 、 時間の節約 と 誤入力の回避に役立ち ます。
8
オブ ジ ェ ク ト 名のあ と に変数名を入力 し て行を完成 さ せます。
n_pbtutor_connectservice gnv_connect
こ のオブジ ェ ク ト は、n_pbtutor_connectservice ユーザ オブジ ェ ク ト
の ス ク リ プ ト ビ ュ ーで宣言 し ますが、 アプ リ ケーシ ョ ンの ど こ か
ら で も 利用で き ます。
PowerBuilder 入門
107
グローバル変数の宣言
変数の命名規約
ス ク リ プ ト を よ り 読みやす く す る には、 一般的な命名ルールに従
う のが最適な方法 と 言え ます。 一般的なルールでは、 2 文字か 3 文
字の接頭辞の後にア ン ダー ス コ ア ( _ ) が付 き ま す。 接頭辞の先
頭の英字は変数のア ク セ ス レベルの範囲 (g は global、 l は local)
を表 し 、後ろの文字は変数のデー タ 型 (s は String 型、l は Long 型、
nv は非ビ ジ ュ アル オブジ ェ ク ト ) を表 し ます。
9
ペ イ ン タ バーの [保存] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーか ら [フ ァ イル|上書き保存] を選択 し ます。
ス ク リ プ ト が コ ン パ イ ル さ れて保存 さ れ ま す。 グ ロ ーバル変数の
デー タ 型を (シ ス テ ム ツ リ ーか ら ド ラ ッ グせずに) 入力 し た場合、
入力 ミ ス があ る と 、 エ ラ ー メ ッ セージが表示 さ れます。 その場合
は、 エ ラ ーを修正 し てか ら も う 一度 [上書 き 保存] を選択 し て く
だ さ い。
108
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
接続情報の変更
現在の学習個所
EAS Demo DB デー タ ベースの参照
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
グローバル変数の宣言
> 接続情報の変更
ログ イ ンおよびログアウ ト ス ク リ プ ト の完了
ア プ リ ケーシ ョ ンの実行
こ れで、 接続サービ ス マネージ ャ を呼び出 し てデー タ ベース接続を確
立で き ます。ただ し 、デー タ ベース接続を確立す る のは、ロ グ イ ン ウ ィ
ン ド ウ で有効なユーザ ID と パ ス ワ ー ド が入力 さ れた場合のみにす る
必要があ り ます。 そ こ で、 pbtutor.ini フ ァ イ ルの情報を ユーザが入力 し
た情報に置 き換え て、 ロ グ イ ン ウ ィ ン ド ウ の [OK] ボ タ ンの Clicked
イ ベン ト に接続サービ ス呼び出 し を追加 し ます。
こ の作業を行 う 前に、ProfileString 呼び出 し が記述 さ れてい る 行を削除
し て コ メ ン ト 化 し ます。ProfileString 呼び出 し は、INI フ ァ イ ルか ら ユー
ザ ID と パ ス ワー ド 情報を取得す る ために接続サービ ス マネージ ャ が
作成す る も のです。 さ ら に、ユーザ ID と パ ス ワー ド の値は、pb.ini フ ァ
イ ルか ら 取得 さ れてハー ド コ ー ド にな っ てい る ため、 pbtutor.ini フ ァ
イ ルで DBParm パ ラ メ ー タ のそれぞれの値を変更 し ます。
こ の練習では、 以下の操作を行い ます。
•
of_GetConnectionInfo 関数の変更
•
接続サービ ス マネージ ャ の呼び出 し
of_GetConnectionInfo 関数の変更
前の ス テ ッ プで、 of_GetConnectionInfo 関数について触れま し た。 こ こ
では、ユーザ ID と パ ス ワー ド 情報用に こ の関数が返す情報を コ メ ン ト
化す る方法について説明 し ます。
ユーザ オブジ ェ ク ト ペ イ ン タ を閉 じ てい る 場合は、 も う 一度開いて
n_pbtutor_connectservice ユ ー ザ オ ブ ジ ェ ク ト を 表 示 し て く だ さ い。
[フ ァ イ ル|最近使用 し たオブジ ェ ク ト ] メ ニ ュ ーを選択すれば、 再表
示で き ます。
PowerBuilder 入門
109
接続情報の変更
1
スク リ プ ト ビ ュ ーの最初のド ロ ッ プダウン リ スト ボッ ク スで「Functions」
を選択 し ます。
2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「of_GetConnectionInfo」 を
選択 し ます。
2
ProfileString が代入 さ れている 2 行を選択 し ます。
as_userid = ProfileString (...)
as_dbpass = ProfileString (...)
ProfileString 呼び出 し で指定す る引数は、 INI フ ァ イ ル名ま たは変
数、 INI フ ァ イ ル セ ク シ ョ ン、 INI フ ァ イ ル キー、 お よ びそれ ら
が正 し く ない場合に使用す る デフ ォ ル ト 値の 4 つです。 こ れ ら の
行は、 of_GetConnectionInfo 関数の CHOOSE CASE 文にあ る
IS_USE_INIFILE の一部です。
3
ペ イ ン タ バー 2 の [ コ メ ン ト ] ボ タ ン を ク リ ッ ク し ます。
こ れ ら の行を コ メ ン ト 化す る こ と で、 ユーザ ID と パ ス ワー ド 情報
が pbtutor.ini か ら 取得 さ れな く な り ます。
4
以下のコ ー ド で始ま る行で、 任意の場所を ク リ ッ ク し ます。
as_dbparm = ProfileString ( ... )
5
ペ イ ン タ バー 2 の [ コ メ ン ト ] ボ タ ン を ク リ ッ ク し ます。
ptutor.ini フ ァ イ ルの DBParm パ ラ メ ー タ には、 ハー ド コ ーデ ィ ン
グ さ れたユーザ ID、 パ ス ワー ド 、 お よ びデー タ ベース名が含ま れ
てい ますが、 こ れ ら の値は使用 し ないで く だ さ い。 そのかわ り に、
ユーザが入力 し た情報 (ユーザ ID と パ ス ワー ド ) の値を DBParm
パ ラ メ ー タ に代入 し ます。
SQLCA DBParm パラ メ ー タ
DBParm の ConnectString でユーザ ID と パ ス ワー ド は不要ですが、
その 2 つを ConnectString に代入す る と 、 Adaptive Server Anywhere
デー タ ベー ス のデー タ ソ ー ス 定義にあ る ユーザ ID と パ ス ワ ー ド
は 上 書 き さ れ ま す。 こ の DBMS で は、 DBParm パ ラ メ ー タ は、
SQLCA の UserID パ ラ メ ー タ と DBPass パ ラ メ ー タ よ り 優先 し ま
す。
6
110
ペ イ ン タ バー 1 の [保存] ボ タ ン を ク リ ッ ク し ます。
ペ イ ン タ バー 1 の [閉 じ る] ボ タ ン を ク リ ッ ク し ます。
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
接続サービ ス マネージ ャ の呼び出 し
次の ス テ ッ プ では、 接続サー ビ ス マ ネージ ャ を 呼び出 し て、 デー タ
ベース に接続 し ます。 ロ グ イ ン ウ ィ ン ド ウ か ら ユーザ入力情報を追加
す る 必要があ る ため、 接続サービ ス マネージ ャ を呼び出すス ク リ プ ト
を、 こ の ウ ィ ン ド ウ の [OK] ボ タ ンの Clicked イ ベン ト に追加 し ます。
オブジ ェ ク ト は、そ こ に追加 さ れた コ ン ト ロ ールの親 と 見な さ れ ます。
し たが っ て、 ロ グ イ ン ウ ィ ン ド ウ は [OK] ボ タ ン の親 と い う こ と に
な り ます。
ス ク リ プ ト で親オ ブ ジ ェ ク ト を 参照す る 場合は通常、 明示的にオ ブ
ジ ェ ク ト 名で指定す る よ り も 限定子 parent を使用す る 方が適切です。
parent を使用す る と 、 ほかのオブジ ェ ク ト 上に配置 さ れてい る コ ン ト
ロ ールに対 し て、 その コ ー ド を再利用 し やす く な り ます。 Clicked イ ベ
ン ト の ス ク リ プ ト では、 ロ グ イ ン ウ ィ ン ド ウ を親 と し て参照 し ます。
単一のウ ィ ザー ド でア プ リ ケーシ ョ ン と 接続サービ ス オブ ジ ェ ク ト を作成 し
た場合
テ ン プ レ ー ト ア プ リ ケーシ ョ ン ウ ィ ザー ド で接続サー ビ ス のユーザ
オブジ ェ ク ト がすでに作成 し て あれば、 こ の ス テ ッ プで入力す る 接続
サー ビ ス マ ネージ ャ を 呼び出すた めの コ ー ド は自動的に生成 さ れて
い ま す。 ただ し 、 その コ ー ド は、 ロ グ イ ン ウ ィ ン ド ウ の Clicked イ ベ
ン ト ではな く 、 ア プ リ ケーシ ョ ン の Open イ ベン ト に追加 さ れてい ま
す。 なお、 こ の コ ー ド には、 グ ロ ーバル変数ではな く ロ ーカル変数が
使用 さ れ ます。
1
シ ス テム ツ リ ーの w_welcome を ダブルク リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ が開 き ます。
2
スク リ プ ト ビ ュ ーの最初のド ロ ッ プ ダウン リ スト ボッ ク スで 「cb_ok」 を
選択 し ます。
または
レ イ アウ ト ビ ュ ーの [OK] ボ タ ン を ダ ブル ク リ ッ ク し ます。
2 番目の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス では Clicked イ ベン ト が選
択 さ れていなければな り ません。 Clicked イ ベン ト が選択 さ れてい
ない場合は選択 し ます。 Clicked イ ベン ト の ス ク リ プ ト には何 も 記
述 さ れてい ません。
PowerBuilder 入門
111
接続情報の変更
3
以下の行を入力 し ます。
// 1) ト ラ ンザ ク シ ョ ン オブ ジ ェ ク ト を イ ン ス タ ン ス化
// 2) 接続が成功な らばロ グ イ ン ウ ィ ン ド ウを閉 じ る
こ の 2 行は、 Clicked イ ベン ト に追加す る コ ー ド の説明です。 行の
先頭に ス ラ ッ シ ュ を 2 個付け る と 、 コ メ ン ト が入力で き る よ う に
な り ます。
4
コ メ ン ト の下に次の代入文を入力 し ます。
gnv_connect = CREATE &
n_pbtutor_connectservice
こ の ス ク リ プ ト の行を 1 行に ま と め る場合、 ア ンパサン ド (&) は
入力 し ないで く だ さ い。 ア ン パサ ン ド は、 ス ク リ プ ト 行が次の行
に続 く こ と を示す文字です。
CREATE 文は、 of_GetConnectionInfo 関数が pbtutor.ini フ ァ イ ルか
ら 取 り 出 し た すべ て の値 を 持つ SQLCA ト ラ ン ザ ク シ ョ ン オ ブ
ジ ェ ク ト を イ ン ス タ ン ス 化 し ま す。 ユーザ ID と パ ス ワ ー ド の行
は、 すでに コ メ ン ト 化 さ れてい る ので取 り 出 さ れ ません。
ス ク リ プ ト を よ り 読みやす く 理解 し やす く す る には、 コ メ ン ト と 、
グ ロ ーバル変数 gnv_connect の代入文の間に空白行を挿入 し ます。
5
CREATE 文の下に以下の行を入力 し ます。
IF gnv_connect.of_ConnectDB ( ) = 0 THEN
Close (parent)
END IF
of_ConnectDB 関数はアプ リ ケーシ ョ ン をデー タ ベース に接続 し ま
す。 こ の レ ッ ス ン の始めの方で説明 し た よ う に、 接続が失敗 し た
場合 (SQL コ ー ド が 0 以外の場合) は、 メ ッ セージ ボ ッ ク ス が開
き 、 そのボ ッ ク ス に SQL エ ラ ー文が表示 さ れ ます。
112
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
of_ConnectDB が 0 (接続の成功を表す SQL コー ド ) を返 し た場合
は、IF-THEN 文の次の行か ら 解析が続け ら れます。こ の場合、cb_ok
コ ン ト ロ ールの親ウ ィ ン ド ウ (w_welcome) が閉 じ ら れ ます。
6
ペ イ ン タ バー 2 の [ コ ンパイル] ボ タ ン を ク リ ッ ク し ます。
または
ス ク リ プ ト ビ ュ ーの内部を右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから
[コ ンパイル] を ク リ ッ ク し ます。
こ の ス ク リ プ ト では、 コ ン パ イ ル エ ラ ーは発生 し ないはずです。
エ ラ ー メ ッ セージが表示 さ れた場合は、 オブジ ェ ク ト 名 と 関数名
を正 し く 入力 し てい る こ と 、お よ び gnv_connect を グ ロ ーバル変数
と し て保存 し た こ と を確認 し て く だ さ い。
ス ク リ プ ト ビ ュ ーのエ ラ ー ウ ィ ン ド ウの表示 / 非表示
ス ク リ プ ト ビ ューで、 タ イ ト ル バーの下の右端にあ る ア イ コ ン を
ク リ ッ ク す る と 、 エ ラ ー ウ ィ ン ド ウ の表示 / 非表示を切 り 替え ら
れます。
こ の後で、 Clicked イ ベン ト の ス ク リ プ ト を記述 し 、 ユーザが入力
し た接続情報を持つ ト ラ ン ザ ク シ ョ ン オブジ ェ ク ト を イ ン ス タ ン
ス化す る 必要があ り ます。
PowerBuilder 入門
113
ログ イ ンお よびログアウ ト ス ク リ プ ト の完了
ログ イ ンおよびログアウ ト ス ク リ プ ト の完了
現在の学習個所
EAS Demo DB デー タ ベースの参照
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
グローバル変数の宣言
接続情報の変更
> ログ イ ンおよびログアウ ト ス ク リ プ ト の完了
ア プ リ ケーシ ョ ンの実行
こ の レ ッ ス ン の初めの方で、 ロ グ イ ン ウ ィ ン ド ウ の [OK] ボ タ ン の
Clicked イ ベン ト か ら 接続サービ ス マネージ ャ を呼び出す手順を説明
し ま し た。 次の ス テ ッ プでは、 ユーザが入力 し た情報を使用 し て、 ト
ラ ン ザ ク シ ョ ン オブ ジ ェ ク ト を イ ン ス タ ン ス 化す る た めの ス ク リ プ
ト を、 同 じ Clicked イ ベン ト に追加 し ます。
ロ グ イ ン ウ ィ ン ド ウ の [キ ャ ン セル] ボ タ ン の Clicked イ ベン ト お よ
びアプ リ ケーシ ョ ン Closed イ ベン ト に、 コー ド を追加す る こ と も で き
ます。
ス ク リ プ ト ビ ュ ーの入力 ミ ス を減 ら すには
ス ク リ プ ト の作成領域内を右 ク リ ッ ク す る と 、[形式を指定 し て貼 り 付
け] コ マ ン ド を含むポ ッ プア ッ プ メ ニ ュ ーが開 き ます。 こ れ ら の コ マ
ン ド を使用 し て、 ス テー ト メ ン ト 、 オブジ ェ ク ト 、 関数、 ま たはテ キ
ス ト フ ァ イ ルの内容を イ ベン ト ス ク リ プ ト に貼 り 付け る こ と がで き
ます。 こ の操作に よ っ て手動入力に よ る エ ラ ーの可能性を減 ら す こ と
がで き ま す。 オー ト ス ク リ プ ト を使用 し て コ ー ド にデー タ を入力す る
こ と も 可能です。 こ の入力方法については、 こ の レ ッ ス ン で説明 し ま
す。
こ の練習では、 以下の操作を行い ます。
114
•
オー ト ス ク リ プ ト シ ョ ー ト カ ッ ト の設定
•
[OK] ボ タ ン の Clicked イ ベン ト に対す る コ ー ド の追加
•
[キ ャ ン セル] ボ タ ンの Clicked イ ベン ト に対す る コー ド の追加
•
アプ リ ケーシ ョ ンの Close イ ベン ト に対す る コ ー ド の追加
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
オー ト ス ク リ プ ト シ ョ ー ト カ ッ ト の設定
オー ト ス ク リ プ ト は、 ス ク リ プ ト を記述す る と き に役立ち ます。 た と
えば、 入力中の文を自動的に完成 さ せた り 、 カー ソ ル位置に挿入すべ
き 言語要素の リ ス ト を表示す る 、 な ど の機能があ り ます。
1
メ ニ ュ ー バーから [デザイ ン|オプ シ ョ ン] を選択 し 、 [オー ト ス ク リ プ
ト ] タ ブ を ク リ ッ ク し ます。
2
最初の 3 つのグループボ ッ ク ス内のすべてのチ ェ ッ ク ボ ッ ク スがオンに
な っ ている こ と を確認 し ます。
[ ド ッ ト の直後のみ起動] チ ェ ッ ク ボ ッ ク スおよび [自動的にポ ッ プ ア ッ
プ] チ ェ ッ ク ボ ッ ク スがオ フ にな っ て い る こ と を確認 し て、 [OK] を ク
リ ッ ク し ます。
こ の よ う に設定 し てお く と 、オー ト ス ク リ プ ト は、挿入すべ き コ ー
ド を判定す る ための十分な情報が あ る と こ ろ で、 ヘルプ を表示 し
ま す。 ただ し 、 カー ソ ル を置いただけでは自動的にはポ ッ プ ア ッ
プ し ません。 [ス テー ト メ ン ト テ ン プ レー ト ] チ ェ ッ ク ボ ッ ク ス を
オン にす る と (デフ ォ ル ト ではオ フ)、 オー ト ス ク リ プ ト を使用 し
て、 複数行に ま たが る PowerScript 構文を入力で き ます。
3
メ ニ ュ ー バーから [ツール|シ ョ ー ト カ ッ ト ] を選択 し ます。
ツ リ ーの [編集] ノ ー ド を展開 し ます。
4
下にス ク ロール し て、 [オー ト ス ク リ プ ト を有効にする] を選択 し ます。
[シ ョ ー ト カ ッ ト キー] ボ ッ ク スに カ ー ソルを合わせて、〔Ctrl〕 + 〔Space〕
キーを押 し ます。
5
[編集] メ ニ ュ ーの [ジ ャ ン プ] ノ ー ド を展開 し 、 [次のマー ク ] を選択 し
ます。
[シ ョ ー ト カ ッ ト キー] ボ ッ ク スで 〔Ctrl〕 + 〔M〕 を押 し ます。
[OK] を ク リ ッ ク し ます。
こ れで、 コ ー ド の入力中にヘルプが必要な場合はいつで も 、 〔Ctrl〕
+ 〔Space〕 を押 し て、 入力デー タ 候補の リ ス ト を ポ ッ プ ア ッ プ さ
せ る こ と がで き ま す。 文 ま たは関数の中に コ メ ン ト を貼 り 付け る
と き は、 〔Ctrl〕 + 〔M〕 を押 し て次の コ メ ン ト に移動で き ます。
PowerBuilder 入門
115
ログ イ ンお よびログアウ ト ス ク リ プ ト の完了
[OK] ボ タ ンの Clicked イ ベ ン ト に対する コ ー ド の追加
本番アプ リ ケーシ ョ ン開発の際には、 あ る 接続プ ロ パテ ィ を初期設定
フ ァ イ ルか ら 、 別の接続プ ロ パテ ィ を ユーザ入力か ら 取得す る こ と が
よ く あ り ます。
こ のチ ュ ー ト リ アル ア プ リ ケーシ ョ ン のユーザ ID と パ ス ワ ー ド は、
チ ュー ト リ アルの INI フ ァ イ ルか ら 取得 し ないで く だ さ い。 こ の 2 つ
は ロ グ イ ン ウ ィ ン ド ウ で入力す る よ う に し 、 デー タ ベース に関す る 情
報は ス ク リ プ ト で用意 し て く だ さ い。
1
cb_ok コ ン ト ロールの Clicked イ ベン ト ス ク リ プ ト が表示 さ れている こ
と を確認 し ます。
こ れは、 接続サービ ス オブジ ェ ク ト の呼び出 し を追加す る ス ク リ
プ ト です。
2
IF-THEN 文の前を ク リ ッ ク し ます。
以下の行を入力 し ます。
// ロー カル変数宣言
string ls_database, ls_userid, ls_password
// 代入文
ls_userid = Trim ( sle_userid.text )
ls_password = Trim ( sle_password.text )
ls_database = "ConnectString='DSN=EAS Demo DB V9;"
こ こ ではロ ーカル変数を宣言し て、値を代入し ていま す。ConnectString
テ キ ス ト 内では、 = 記号の前後に スペース を入れないで く だ さ い。
オー ト ス ク リ プ ト を使用 し て代入文を簡単に コ ーデ ィ ングする方法
オー ト ス ク リ プ ト で代入文を入力す る と き に、 変数名の中のア ン
ダース コ ア (_) よ り も 前に英字を入力 し て 〔Ctrl〕 + 〔Space〕 キー
を押す と 、 入力デー タ 候補の リ ス ト を ポ ッ プ ア ッ プ さ せ る こ と が
で き ます。矢印キーを使用 し て適切な入力デー タ 候補に移動 し 、 こ
れを 〔Tab〕 キーで ス ク リ プ ト 内に貼 り 付け ます。 まずア ン ダース
コ ア (_) を 入力 し 、 そ の後 ろ に先頭の英字 を 入力 し て 〔Ctrl〕 +
〔Space〕 を押す と 、 一意の入力デー タ 候補が あ る 場合は、 こ れが
直接ス ク リ プ ト 内に貼 り 付け ら れます。
Trim 関数は、 ロ グ イ ン ウ ィ ン ド ウ の シ ン グ ル ラ イ ン エデ ィ ッ ト
ボ ッ ク ス か ら 引数 と し て渡 さ れた ユーザ ID お よ びパ ス ワ ー ド の
値の前後の スペース を削除 し ます。
116
PowerBuilder
レ ッ スン 4
3
デー タ ベースへの接続
追加 し た行 (および CREATE 文) よ り も後ろ、 IF-THEN 文よ り も 前の位
置で ク リ ッ ク し ます。
以下の行を入力 し ます。
// ユーザ入力の値で イ ン ス タ ン ス化
SQLCA.userid = ls_userid
SQLCA.dbpass = ls_password
SQLCA.dbparm = ls_database + "UID=" + &
ls_userid + ";PWD=" + ls_password + "'"
上記の行に よ っ て、 [シ ン グル ラ イ ン エデ ィ ッ ト ] テ キ ス ト ボ ッ ク
ス か ら 取得 し た値で SQLCA パ ラ メ ー タ が イ ン ス タ ン ス 化 さ れ ま
す。
上記の行は、 CREATE 文 よ り も 後 ろ に追加す る 必要が あ り ま す。
こ れは、 接続サービ ス マネージ ャ の Constructor イ ベン ト で取得 し
た空の値が上記の行を上書 き し て し ま う の を防 ぐ ためです。 上記
の行を IF-THEN 文 よ り も 前に追加す る こ と も 必要です。 そ う し な
い と 、接続サービ ス マネージ ャ の of_ConnectDB 関数に よ っ て上記
の行が呼び出 さ れた と き に、 ト ラ ン ザ ク シ ョ ン オ ブ ジ ェ ク ト に
よ っ て こ れ ら の値が使用 さ れ ません。
4
PowerBuilder 入門
ペ イ ン タ バー 2 の [ コ ンパイル] ボ タ ン を ク リ ッ ク し ます。
または
ス ク リ プ ト ビ ュ ーの内部を右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから
[コ ンパイル] を ク リ ッ ク し ます。
117
ログ イ ンお よびログアウ ト ス ク リ プ ト の完了
こ の ス ク リ プ ト では、 コ ン パ イ ル エ ラ ーは発生 し ないはずです。
エ ラ ー メ ッ セージが表示 さ れた場合は、 オブジ ェ ク ト と 関数名を
正 し く 入力 し てい る か確認 し ます。
[キ ャ ン セル] ボ タ ンの Clicked イ ベン ト に対する コ ー ド の追加
こ の ス テ ッ プでは、 コ ー ド を [キ ャ ン セル] ボ タ ン に追加 し て、 ボ タ
ン を ク リ ッ ク し た と き にアプ リ ケーシ ョ ン の実行が中止 さ れ る よ う に
し ます。
1
レ イ アウ ト ビ ュ ーで [キ ャ ン セル] ボ タ ン を ダ ブル ク リ ッ ク し ます。
または
スク リ プト ビ ュ ーの最初のド ロ ッ プダウン リ スト ボッ ク スで 「cb_cancel」
を選択 し ます。
[キ ャ ン セル] ボ タ ンの ス ク リ プ ト 領域は空白にな っ てい ます。
2
Clicked イ ベン ト のス ク リ プ ト を 1 行入力 し ます。
HALT
こ の ス ク リ プ ト は、 ロ グ イ ン ウ ィ ン ド ウ で [キ ャ ン セル] ボ タ ン
を ク リ ッ ク す る と 、 すぐ にアプ リ ケーシ ョ ン を強制終了 し ます。
3
ペ イ ン タ バーの [保存] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーか ら [フ ァ イル|上書き保存] を選択 し ます。
ス ク リ プ ト が コ ンパ イ ル さ れます。
4
ペ イ ン タ バーの [閉 じ る] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーか ら [フ ァ イル|閉 じ る] を選択 し ます。
ウ ィ ン ド ウ ペ イ ン タ が閉 じ ます。
118
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
ア プ リ ケーシ ョ ンの Close イ ベ ン ト に対する コ ー ド の追加
接続サービ ス マネージ ャ は、 グ ロ ーバル変数に よ っ て呼び出 さ れてい
る ため、 こ の ま ま アプ リ ケーシ ョ ン で利用で き ます。 ( ロ ーカル変数を
使用 し た場合 と は異な り ) イ ン ス タ ン ス化 し 直す必要はあ り ません。
こ の ス テ ッ プでは、 接続サービ ス マネージ ャ で接続を解除す る 関数を
呼び出 し て、 デー タ ベース接続を終了 し ます。
1
シ ス テム ツ リ ーの pbtutor ア プ リ ケーシ ョ ン ア イ コ ン を ダ ブルク リ ッ ク
し ます。
アプ リ ケーシ ョ ン ペ イ ン タ に、 チ ュ ー ト リ アル アプ リ ケーシ ョ ン
オ ブ ジ ェ ク ト の さ ま ざ ま な ビ ュ ーが表示 さ れ ま す。 ス ク リ プ ト
ビ ュ ーがデ フ ォ ル ト レ イ ア ウ ト 内の ス タ ッ ク の一部で あ る 場合
は、 ス タ ッ ク か ら 切 り 離すか、 2 番目の ス ク リ プ ト ビ ュ ーを開 く
ほ う が簡単な場合 も あ り ます。
2
ス ク リ プ ト ビ ュ ーの 2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「close
( ) returns (none)」 を選択 し ます。
アプ リ ケーシ ョ ン の Close イ ベン ト には、ま だ何 も コ ー ド が記述 さ
れてい ません。
3
Close イ ベン ト の コ メ ン ト と し て以下の行を入力 し ます。
// ア プ リ ケーシ ョ ン を閉 じ る ためのス ク リ プ ト
// デー タ ベース と の接続解除
4
追加 し た行の一部または全部を選択 し ます。
[ コ メ ン ト ] ボ タ ン を ク リ ッ ク し ます。
5
入力 し た コ メ ン ト の下の行に、 次の行を入力 し ます (オー ト ス ク リ プ ト を
使用する と 簡単に変数名 と 関数名を入力で き ます)。
gnv_connect.of_DisconnectDB ( )
PowerBuilder 入門
119
ログ イ ンお よびログアウ ト ス ク リ プ ト の完了
グローバル変数を null に設定 し て メ モ リ を解放する場合
アプ リ ケーシ ョ ンの Close イ ベン ト がな く 、接続グ ロ ーバル変数の
イ ン ス タ ン ス を 必要 と し ない場合は、 SetNull 関数を呼び出 し て、
割 り 当て ら れていた メ モ リ を解放で き ます。
PowerBuilder には、 オブジェ ク ト イ ン ス タ ン ス を 破棄する DESTROY
文 も 用意 さ れてい ます。 非ビ ジ ュ アル オブジ ェ ク ト の ロ ーカル変
数ま たはグ ロ ーバル変数には DESTROY 文を使用 し ないで く だ さ
い。 PowerBuilder ガベージ コ レ ク シ ョ ン は、 ス コ ープの外に出た
ロ ーカル変数を削除 し ます。
6
スク リ プ ト ビ ュ ーのスク リ プ ト 領域内の任意の場所を 右ク リ ッ ク し ま す。
ポ ッ プ ア ッ プ メ ニ ュ ーで [コ ンパイル] を ク リ ッ ク し ます。
Close ス ク リ プ ト が コ ンパ イ ル さ れます。エ ラ ー メ ッ セージが表示
さ れた場合は、入力済みの行をチ ェ ッ ク し て、変数ま たはオブジ ェ
ク ト 名に入力 ミ ス がないか ど う か を確認 し て く だ さ い。
7
ペ イ ン タ バー 1 の [閉 じ る] ボ タ ン を ク リ ッ ク し ます。
メ ッ セージ ボ ッ ク ス が表示 さ れ、 ア プ リ ケーシ ョ ン ラ イ ブ ラ リ
フ ァ イ ルのアプ リ ケーシ ョ ン オブジ ェ ク ト の変更内容を保存す る
か ど う か を たずね ら れます。
8
[はい] を ク リ ッ ク し ます。
変更内容が保存 さ れ、 アプ リ ケーシ ョ ン ペ イ ン タ が閉 じ ます。
120
PowerBuilder
レ ッ スン 4
デー タ ベースへの接続
ア プ リ ケーシ ョ ンの実行
現在の学習個所
EAS Demo DB デー タ ベースの参照
接続オブ ジ ェ ク ト ウ ィ ザー ド の実行
グローバル変数の宣言
接続情報の変更
ログ イ ンおよびログアウ ト ス ク リ プ ト の完了
> ア プ リ ケーシ ョ ンの実行
こ の ス テ ッ プでは、 アプ リ ケーシ ョ ン を実行 し ます。
1
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
メ ッ セージ ボ ッ ク スが表示 さ れ、 変更を保存する よ う 要求 さ れた ら、 [は
い] を ク リ ッ ク し て保存 し ます。
ワ ー ク スペース が閉 じ 、 アプ リ ケーシ ョ ン が実行 さ れます。
2
[ユーザ ID] テキス ト ボ ッ ク スに 「dba」 と 入力 し ます。
[パスワー ド ] ボ ッ ク スに 「sql」 と 入力 し ます。
パ ス ワ ー ド はア ス タ リ ス ク で表示 さ れ ま す。 こ の ウ ィ ン ド ウ の タ
ブ順序はすでに設定 し て あ る ため、 〔Tab〕 を押 し て [ユーザ ID]
ボ ッ ク ス か ら [パ ス ワー ド ] ボ ッ ク ス、 さ ら に [OK] にフ ォーカ
ス を移動で き ます。
3
[OK] を ク リ ッ ク し ます。
デー タ ベース に接続 し て、 MDI フ レームが開 き ます。
無効なユーザ ID と パスワー ド を入力 し た場合
ユーザ ID と パ ス ワー ド に入力 ミ ス があ っ た場合、ODBC の設定 ダ
イ ア ロ グ ボ ッ ク ス が表示 さ れます。 こ のダ イ ア ロ グ ボ ッ ク ス の [ ロ
グ イ ン] ページで正 し いユーザ ID と パ ス ワー ド を入力 し 直 し て く
だ さ い。 パ ス ワ ー ド と ユーザ ID を 変更せずに、 こ の ダ イ ア ロ グ
ボ ッ ク ス の [ODBC] ページで [テ ス ト 接続] ボ タ ン を ク リ ッ ク す
る と 、ユーザ ID と パ ス ワー ド の無効を通知す る メ ッ セージ ボ ッ ク
ス が表示 さ れます。
4
メ ニ ュ ー バーから [フ ァ イル|終了] を選択 し ます。
アプ リ ケーシ ョ ン が終了 し 、 PowerBuilder 開発環境に戻 り ます。
PowerBuilder 入門
121
ア プ リ ケーシ ョ ンの実行
122
PowerBuilder
レ ッ ス ン 5
先祖ウ ィ ン ド ウの変更
こ の レ ッ ス ン では、 テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド を
使用 し て生成 し たベース シー ト ウ ィ ン ド ウ を継承す る ウ ィ ン ド ウ
を作成 し ます。 まず、 デー タ ウ ィ ン ド ウ コ ン ト ロ ールを含む定義
済みのユーザオブジ ェ ク ト を、 継承 さ れ る ウ ィ ン ド ウ に追加 し ま
す。 次に、 オ リ ジナルのベース シー ト ではな く 、 拡張レ イ ヤ ウ ィ
ン ド ウ を継承す る 新規 ウ ィ ン ド ウ w_customers と w_products を作
成 し ます。 最後に、 こ れ ら のシー ト ウ ィ ン ド ウ が、 デザ イ ン時に
設定 し たサ イ ズで実行時にオープ ン さ れ る よ う に し ます。
その前に まず、 デー タ ウ ィ ン ド ウ コ ン ト ロ ールを含む定義済みの
ユーザ オブジ ェ ク ト が登録 さ れた ラ イ ブ ラ リ リ ス ト に、 ラ イ ブ ラ
リ を追加 し ま す。 こ の レ ッ ス ン では、 以下の項目について学習 し
ます。
•
探索パ スへの ラ イ ブ ラ リ の追加
•
先祖シー ト ウ ィ ン ド ウ の新規作成
•
ユーザ イ ベン ト お よ び イ ベン ト ス ク リ プ ト の追加
•
デー タ ウ ィ ン ド ウ コ ン ト ロ ールのデー タ の検索を行 う ス ク リ
プ ト の追加
•
シー ト ウ ィ ン ド ウ のサ イ ズに合わせた実行時の設定の調整
所要時間
約 25 分
PowerBuilder 入門
123
探索パスへの ラ イ ブ ラ リ の追加
探索パスへのラ イ ブ ラ リ の追加
現在の学習個所
> 探索パスへのラ イ ブ ラ リ の追加
先祖シー ト ウ ィ ン ド ウの新規作成
ユーザ イ ベン ト および イ ベン ト ス ク リ プ ト の追加
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う ス ク リ プ ト の追加
シー ト ウ ィ ン ド ウのサイズに合わせた実行時の設定の調整
こ の ス テ ッ プでは、 チ ュ ー ト リ アル アプ リ ケーシ ョ ンの探索パ ス に ラ
イ ブ ラ リ を追加 し ま す。 アプ リ ケーシ ョ ン で使用す る すべての ラ イ ブ
ラ リ を追加す る 必要があ り ます。
現在の ア プ リ ケ ーシ ョ ン に追加す る ラ イ ブ ラ リ には、 ベー ス シー ト
ウ ィ ン ド ウ に後で追加す る ユーザ オブジ ェ ク ト (u_dwstandard) な ど、
い く つかの コ ーデ ィ ン グ済みのオブジ ェ ク ト が含ま れます。
1
シ ス テム ツ リ ーで pbtutor タ ーゲ ッ ト を右 ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を ク リ ッ ク し ます。
pbtutor タ ーゲ ッ ト プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ま
す。
2
[ラ イ ブ ラ リ リ ス ト ] ページが表示 さ れている こ と を確認 し ます。
[参照 (…)] を ク リ ッ ク し ます。
ラ イ ブ ラ リ の選択 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
3
124
Tutorial フ ォルダに移動 し ます。
「tutor_pb.pbl」 を選択 し 、 [開 く ] を ク リ ッ ク し ます。
PowerBuilder
レ ッ スン 5
先祖ウ ィ ン ド ウの変更
[ ラ イ ブ ラ リ リ ス ト ] ページに戻 り ま す。 チ ュ ー ト リ アル アプ リ
ケーシ ョ ン の探索パ ス に tutor_pb.pbl フ ァ イ ルが含ま れてい ます。
4
PowerBuilder 入門
[OK] を ク リ ッ ク し ます。
125
先祖シー ト ウ ィ ン ド ウの新規作成
先祖シー ト ウ ィ ン ド ウの新規作成
現在の学習個所
探索パスへのラ イ ブ ラ リ の追加
> 先祖シー ト ウ ィ ン ド ウの新規作成
ユーザ イ ベン ト および イ ベン ト ス ク リ プ ト の追加
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う ス ク リ プ ト の追加
シー ト ウ ィ ン ド ウのサイズに合わせた実行時の設定の調整
テ ン プ レ ー ト ア プ リ ケーシ ョ ン ウ ィ ザー ド を使用 し て生成 し たベー
ス シー ト ウ ィ ン ド ウ を継承す る ウ ィ ン ド ウ を作成 し 、 デー タ ウ ィ ン ド
ウ コ ン ト ロ ール を追加 し ま す。 ソ ー ス エデ ィ タ で、 生成 し た シー ト
ウ ィ ン ド ウ (w_customers と w_products) が、 上記の新規 ウ ィ ン ド ウ を
継承す る よ う に変更 し ます。
新規の先祖 ウ ィ ン ド ウ に追加す る デー タ ウ ィ ン ド ウ コ ン ト ロ ールは、
チ ュ ー ト リ アル ア プ リ ケーシ ョ ン用に作成 し た ユーザ オブ ジ ェ ク ト
か ら 定義を継承 し ます。 こ のユーザ オブジ ェ ク ト は、 先ほ ど タ ーゲ ッ
ト ラ イ ブ ラ リ リ ス ト に追加 し た PBL フ ァ イ ルに含ま れてい ます。ユー
ザ オブ ジ ェ ク ト と は、 カ ス タ マ イ ズ さ れたデー タ ウ ィ ン ド ウ コ ン ト
ロ ールの こ と で、 標準のデー タ ベース エ ラ ーのチ ェ ッ ク を実行す る ス
ク リ プ ト を含みます。
ユーザ オブ ジ ェ ク ト を使用する理由
PowerBuilder では、 アプ リ ケーシ ョ ン で よ く 使用す る 処理を実行す る
ためにユーザ オブジ ェ ク ト を構築 し ます。定義 し たユーザ オブジ ェ ク
ト は、 追加作業な し で繰 り 返 し 利用で き ます。
こ の練習では、 以下の操作を行い ます。
126
•
新規シー ト ウ ィ ン ド ウ の継承階層の作成
•
マ ス タ ー デー タ ウ ィ ン ド ウ 用のデー タ ウ ィ ン ド ウ コ ン ト ロ ール
(dw_master) の追加
•
詳細デー タ ウ ィ ン ド ウ 用のデー タ ウ ィ ン ド ウ コ ン ト ロ ール
(dw_detail) の追加
•
ユーザ オブジ ェ ク ト か ら 継承 さ れた ス ク リ プ ト の参照
PowerBuilder
レ ッ スン 5
先祖ウ ィ ン ド ウの変更
新規シー ト ウ ィ ン ド ウの継承階層の作成
こ の ス テ ッ プでは、 ベース シー ト ウ ィ ン ド ウ を継承す る ウ ィ ン ド ウ を
新規に作成 し ます。 こ の レ ッ ス ン では、 こ の新規 ウ ィ ン ド ウ を、 ベー
ス シー ト ウ ィ ン ド ウ と アプ リ ケーシ ョ ン シー ト ウ ィ ン ド ウ の間の拡
張レ イ ヤ と し て使用 し ます。 後で、 こ の拡張レ イ ヤ ウ ィ ン ド ウ に変更
を加え ます。 こ の変更は、 こ の拡張レ イ ヤ ウ ィ ン ド ウ を継承す るすべ
ての新規シー ト ウ ィ ン ド ウ に自動的に反映 さ れます。
現在のチ ュ ー ト リ アル アプ リ ケーシ ョ ン では、 すでに w_customers お
よ び w_products ウ ィ ン ド ウ が w_pbtutor_basesheet ウ ィ ン ド ウ を継承 し
てい ます。 ウ ィ ザー ド に よ っ て生成 さ れた こ れ ら のシー ト ウ ィ ン ド ウ
には (名前 と 表示テ キ ス ト を除 き) 固有のプ ロ パテ ィ 値や関数を ま だ
追加 し ていないため、 こ れ ら の ウ ィ ン ド ウ を上書 き し て新規の ウ ィ ン
ド ウ を作成す る 際に コ ー ド を コ ピーす る 必要は一切あ り ません。 こ の
レ ッ ス ン では、 こ れ ら の ウ ィ ン ド ウ を上書 き し て、 拡張レ イ ヤ ウ ィ ン
ド ウ を継承す る 新規 ウ ィ ン ド ウ を作成 し ます。
1
PowerBuilder メ ニ ュ ーから [フ ァ イル|継承] を選択 し ます。
オブジ ェ ク ト か ら 継承 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
2
[ ラ イ ブ ラ リ ] リ ス ト ボ ッ ク スで pbtutor.pbl が選択 さ れてお り 、 [オブ
ジ ェ ク ト の種類] ド ロ ッ プ ダウン リ ス ト ボ ッ ク ス で 「ウ ィ ン ド ウ」 が選
択 さ れている こ と を確認 し ます。
「w_pbtutor_basesheet」 を選択 し て、 [OK] を ク リ ッ ク し ます。
3
[ フ ァ イル|上書き保存] を選択 し 、 新規ウ ィ ン ド ウ名に
「w_master_detail_ancestor」 と 入力 し ます。
4
(オプ シ ョ ン) [コ メ ン ト ] ボ ッ ク スに以下の コ メ ン ト を入力 し ます。
w_customers および w_products シー ト ウ ィ ン ド ウに使用する
新規先祖ベースシー ト
5
[ア プ リ ケーシ ョ ン ラ イ ブ ラ リ ] リ ス ト ボ ッ ク スで 「pbtutor.pbl」 が選択
さ れている こ と を確認 し て、 [OK] を ク リ ッ ク し ます。
[ フ ァ イル|閉 じ る] を選択 し て、 新規先祖ベース シー ト を閉 じ ます。
先祖 ウ ィ ン ド ウ が ウ ィ ン ド ウ ペ イ ン タ 内で開い て い る と 、 子孫
ウ ィ ン ド ウ を作成で き ません。
6
PowerBuilder 入門
PowerBuilder メ ニ ュ ーから [フ ァ イル|継承] を選択 し ます。
127
先祖シー ト ウ ィ ン ド ウの新規作成
7
[ラ イ ブ ラ リ ] リ ス ト ボ ッ ク スで pbtutor.pbl が選択 さ れてお り 、 [オブ
ジ ェ ク ト の種類] ド ロ ッ プ ダウ ン リ ス ト ボ ッ ク ス で 「ウ ィ ン ド ウ」 が選
択 さ れている こ と を確認 し ます。
「w_master_detail_ancestor」 を選択 し て、 [OK] を ク リ ッ ク し ます。
8
プ ロパテ ィ ビ ュ ーの [全般] ページの [ タ グ] テキス ト ボ ッ ク スに
「Maintain Customers」 と 入力 し ます。
PowerBuilder メ ニ ュ ーか ら [ フ ァ イル|名前を付けて保存] を選択 し 、
[ウ ィ ン ド ウ] リ ス ト ボ ッ ク スで 「w_customers」 を選択 し ます。
9
コ メ ン ト のテキス ト を次のよ う に変更 し ます。
w_master_detail_ancestor から 継承する Customer シー ト
ウィ ンドウ
10 [OK] を ク リ ッ ク し て、 既存の w_customers ウ ィ ン ド ウを置き換え るか
ど う か を 尋ね る ウ ィ ン ド ウの保存 ダ イ ア ロ グボ ッ ク スが表示 さ れた ら
[はい] を ク リ ッ ク し ます。
w_pbtutor_basesheet で は な く w_master_detail_ancestor を 継承す る
シー ト ウ ィ ン ド ウ が新規に作成 さ れます。
11 以下の 2 つの手順を変更 し て、 手順 6 ~ 10 を繰 り 返 し ます。
手順
8
9
変更指示
プ ロ パテ ィ ビ ュ ーの [全般] ページの [ タ グ] テ キ ス ト ボ ッ
ク ス に 「Maintain Products」 と 入力 し ます。 PowerBuilder
メ ニ ュ ーか ら [フ ァ イ ル|名前 を 付け て保存] を 選択 し 、
[ウ ィ ン ド ウ ] リ ス ト ボ ッ ク ス で 「w_products」 を 選択 し
ます。
コ メ ン ト のテ キ ス ト を次の よ う に変更 し ます。
w_master_detail_ancestor か ら 継承する Product シー ト
ウィ ンドウ
12 新規に作成 し た w_customers および w_products ウ ィ ン ド ウを閉 じ ま
す。
いずれかの子孫が ウ ィ ン ド ウ ペ イ ン タ に表示 さ れてい る 場合、 そ
の先祖 ウ ィ ン ド ウ を オープンす る こ と はで き ません。
13 PowerBuilder メ ニ ュ ーか ら [実行|ワー ク スペースのフ ル構築] を選択
し ます。
128
PowerBuilder
レ ッ スン 5
先祖ウ ィ ン ド ウの変更
ワ ー ク スペース の再構築は、継承階層を変更 し た後、新規先祖 ウ ィ
ン ド ウ を 修正す る 前に行 う 必要が あ り ま す。 構築の進行状況は、
PowerBuilder メ イ ン ウ ィ ン ド ウ 下部のシ ス テ ム ツ リ ーの下に表示
さ れ る出力ウ ィ ン ド ウ で見 る こ と がで き ます。 構築が終了す る と 、
出力ウ ィ ン ド ウ に 「終了 ワー ク スペースの フ ル構築 MyWorkspace」 と
表示 さ れます。
マ ス タ ー デー タ ウ ィ ン ド ウ用のデー タ ウ ィ ン ド ウ コ ン ト ロール
(dw_master) の追加
こ の ス テ ッ プでは、 デー タ ウ ィ ン ド ウ コ ン ト ロ ール (ユーザ オブジ ェ
ク ト u_dwstandard と し て保存) を w_master_detail_ancestor ウ ィ ン ド ウ
に追加 し ます。 こ の コ ン ト ロ ールは、 先祖 ウ ィ ン ド ウ お よ びその子孫
ウ ィ ン ド ウ のマ ス タ デー タ ウ ィ ン ド ウ と し て使用 さ れます。
u_dwstandard のよ う なユーザ オブ ジ ェ ク ト の作成方法
デー タ ウ ィ ン ド ウ コ ン ト ロ ール を基に し たユーザ オブジ ェ ク ト を作
成す る には、 [新規作成] ボ タ ン を ク リ ッ ク し 、 新規作成 ダ イ ア ロ グ
ボ ッ ク ス の [PB オブジ ェ ク ト ] ページか ら [標準ビ ジ ュ アル] を選択
し ます。 こ れで標準ビ ジ ュ アル オブジ ェ ク ト のデー タ 型の選択 ダ イ ア
ロ グ ボ ッ ク ス が表示 さ れます。 [デー タ 型] テ キ ス ト ボ ッ ク ス で 「data
window」 を選択 し 、 必要に応 じ てユーザ イ ベン ト を追加 し ます。 ユー
ザ イ ベン ト を追加す る方法については、 こ のチ ュ ー ト リ アルの後半で
説明 し ます。
1
シ ス テム ツ リ ーで w_master_detail_ancestor を ダブルク リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ に w_master_detail_ancestor ウ ィ ン ド ウ が開 き
ます。こ の ウ ィ ン ド ウ は テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー
ド に よ っ て作成 さ れた ウ ィ ン ド ウ です。同ウ ィ ザー ド に よ っ て、 メ
ニ ュ ーが作成 さ れ、 こ の ウ ィ ン ド ウ m_pbtutor_sheet にア タ ッ チ さ
れてい ます。 こ の メ ニ ューは、 ウ ィ ン ド ウ のプ ロ パテ ィ ビ ュ ーに
表示 さ れます。 こ のプ ロ パテ ィ は後で変更 し ます。
PowerBuilder 入門
2
ウ ィ ン ド ウ ペ イ ン タ にレ イ アウ ト ビ ュ ーが見えている こ と を確認 し て く
だ さ い。
3
シ ス テム ツ リ ー内の tutor_pb.pbl を展開 し ます。
シ ス テ ム ツ リ ーか ら レ イ ア ウ ト ビ ュ ーの w_master_detail_ancestor
ウ ィ ン ド ウに u_dwstandard を ド ラ ッ グ し ます。
129
先祖シー ト ウ ィ ン ド ウの新規作成
4
ウ ィ ン ド ウを広げて、コ ン ト ロール全体がウ ィ ン ド ウ内に表示 さ れる よ う
に し ます。
ユーザ オブ ジ ェ ク ト の定義 を 継承す る デー タ ウ ィ ン ド ウ コ ン ト
ロ ールが作成 さ れます。
5
レ イ アウ ト ビ ュ ーで新 し い コ ン ト ロールが選択 さ れている こ と を確認 し
ます。
隅に小 さ な黒い正方形が表示 さ れていれば、 その コ ン ト ロ ールは
選択 さ れてい ます。 プ ロ パテ ィ ビ ュ ーには選択 さ れてい る コ ン ト
ロ ールのプ ロ パテ ィ が表示 さ れます。
6
プ ロパテ ィ ビ ュ ーの [名前] テキス ト ボ ッ ク スで 「dw_1」 を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「dw_master」 と 入力 し ます。
[垂直ス ク ロールバー] チ ェ ッ ク ボ ッ ク ス を オンに し ます。
デー タ ウ ィ ン ド ウ コ ン ト ロ ールに垂直 ス ク ロ ールバーが追加 さ
れ、 コ ン ト ロ ール名が dw_master に変更 さ れ ます。
「dw_」 はデー タ ウ ィ ン ド ウ コ ン ト ロ ールの標準的な接頭辞です。
130
PowerBuilder
レ ッ スン 5
先祖ウ ィ ン ド ウの変更
詳細デー タ ウ ィ ン ド ウ用のデー タ ウ ィ ン ド ウ コ ン ト ロール
(dw_detail) の追加
こ の ス テ ッ プでは、 アプ リ ケーシ ョ ン の詳細デー タ ウ ィ ン ド ウ であ る
2 番目のデー タ ウ ィ ン ド ウ コ ン ト ロ ールを追加 し ます。
1
2 番目のデー タ ウ ィ ン ド ウ コ ン ト ロールを 1 番目の コ ン ト ロールの下に
追加する スペース を確保する ために、 ウ ィ ン ド ウのサイ ズを変更 し ます。
シ ス テム ツ リ ーから レ イ アウ ト ビ ュ ーの dw_master コ ン ト ロールの下
に u_dwstandard を ド ラ ッ グ し ます。
ユーザ オ ブ ジ ェ ク ト u_dwstandard の定義 を 継承す る 別のデー タ
ウ ィ ン ド ウ コ ン ト ロ ールが作成 さ れます。
2
全体がウ ィ ン ド ウ内に表示 さ れる よ う にデー タ ウ ィ ン ド ウ コ ン ト ロール
を移動 し ます。
必要に応 じ て、 レ イ ア ウ ト ビ ュ ーを最大化 し 、 その中の ウ ィ ン ド
ウ オブジ ェ ク ト を拡大 し て、 デー タ ウ ィ ン ド ウ コ ン ト ロ ールを表
示す る スペース を大 き く し ます。
3
レ イ アウ ト ビ ュ ーで新 し い コ ン ト ロールが選択 さ れている こ と を確認 し
ます。
プ ロ パテ ィ ビ ュ ーには選択 さ れてい る コ ン ト ロ ールのプ ロ パテ ィ
が表示 さ れます。
4
プ ロパテ ィ ビ ュ ーの [名前] テキス ト ボ ッ ク スで 「dw_1」 を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「dw_detail」 と 入力 し ます。
コ ン ト ロ ール名が dw_detail に変更 さ れ ます。
PowerBuilder 入門
131
先祖シー ト ウ ィ ン ド ウの新規作成
ユーザ オブ ジ ェ ク ト か ら継承 さ れたス ク リ プ ト の参照
こ の ス テ ッ プでは、 デー タ ウ ィ ン ド ウ コ ン ト ロ ールが u_dwstandard か
ら 継承 し た ス ク リ プ ト を参照 し ます。
1
レ イ アウ ト ビ ュ ーで dw_detail デー タ ウ ィ ン ド ウを ダ ブル ク リ ッ ク し ま
す。
または
まだ選択 し ていない場合は、 ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プ ダウ ン
リ ス ト から 「dw_detail」 を選択 し ます。
ス ク リ プ ト ビ ュ ーで、 dw_detail コ ン ト ロ ールの ItemChanged イ ベ
ン ト に対す る ス ク リ プ ト が開 き ます。 こ の ス ク リ プ ト は空です (何
も 記述 さ れてい ません)。
ス ク リ プ ト が記述 さ れていない イ ベン ト は、 ス ク リ プ ト が記述 さ
れた イ ベン ト と は別にアル フ ァ ベ ッ ト 順に並べ ら れ ま す。 ス ク リ
プ ト が記述 さ れた イ ベン ト が、 ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス の
先頭に一覧表示 さ れます。 先祖ス ク リ プ ト が記述 さ れた dberror イ
ベン ト は こ こ に表示 さ れ ま す (表示 さ れない場合は、 イ ベン ト の
ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク ス を 上方に ス ク ロ ール し て く だ さ
い)。
2
ス ク リ プ ト ビ ュ ーの 2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで
「dberror」 を選択 し ます。
こ の ス ク リ プ ト も 何 も 記述 さ れてい ま せんが、 イ ベン ト 名の横の
ス ク リ プ ト ア イ コ ン が紫色で表示 さ れてい ます。 こ れは、 先祖 コ
ン ト ロ ール (u_dwstandard) に、 関連付け ら れた ス ク リ プ ト があ る
こ と を意味 し ます。
3
132
メ ニ ュ ーバーの [編集|ジ ャ ン プ|先祖ス ク リ プ ト ] を選択 し ます。
または
3 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「u_dwstandard」 を選択 し ま
す。
PowerBuilder
レ ッ スン 5
先祖ウ ィ ン ド ウの変更
ス ク リ プ ト ビ ュ ーに、 DBError イ ベン ト に対す る ス ク リ プ ト が表
示 さ れ ま す。 先祖 ス ク リ プ ト は、 子孫 ウ ィ ン ド ウ の ス ク リ プ ト
ビ ュ ーか ら ア ク セ スす る と き は読み込み専用にな り ます。
4
適宜ウ ィ ン ド ウ を ス ク ロール し て、 DBError イ ベン ト に定義 さ れたデー
タ ベースのエ ラ ー処理を見ます。
こ の ス ク リ プ ト では、DBError イ ベン ト が通常表示す るデフ ォ ル ト
の エ ラ ー メ ッ セージ を 抑制 し て、 発生す る 可能性の あ る デー タ
ベー ス エ ラ ーご と に適切な メ ッ セージ を表示 し てい ま す。 ま た、
ユーザ オブ ジ ェ ク ト に宣言 さ れた ユーザ イ ベン ト を呼び出 し て
い ます。
dw_master と dw_standard は、 と も に u_dwstandard を継承 し た コ ン
ト ロ ールなので、 こ の ロ ジ ッ ク は両方の コ ン ト ロ ールで自動的に
再利用 さ れ ます。
5
メ ニ ュ ーバーの [編集|ジ ャ ン プ|子孫ス ク リ プ ト ] を選択 し ます。
または
ス ク リ プ ト ビ ュ ーのス ク リ プ ト 領域を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーの [ジ ャ ン プ|子孫ス ク リ プ ト ] を選択 し ます。
3 番目の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス に、 現在の コ ン ト ロ ール
を含むオブジ ェ ク ト の識別子であ る 「w_master_detail_ancestor」 が
再度表示 さ れ ま す。 こ の コ ン ト ロ ール (dw_detail) の DBError イ
ベン ト の ス ク リ プ ト は ま だ記述 さ れてい ません。
PowerBuilder 入門
133
ユーザ イ ベ ン ト および イ ベン ト ス ク リ プ ト の追加
ユーザ イ ベン ト および イ ベン ト ス ク リ プ ト の追加
現在の学習個所
探索パスへのラ イ ブ ラ リ の追加
先祖シー ト ウ ィ ン ド ウの新規作成
> ユーザ イ ベン ト および イ ベン ト ス ク リ プ ト の追加
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う ス ク リ プ ト の追加
シー ト ウ ィ ン ド ウのサイズに合わせた実行時の設定の調整
ウ ィ ン ド ウ 、 ユーザ オブジ ェ ク ト 、 お よ び コ ン ト ロ ールは、 定義済み
の イ ベン ト を持ち ま す。 必要 と す る イ ベン ト はほ と ん ど定義済み イ ベ
ン ト で提供 さ れてい ま すが、 必要に応 じ て独自の イ ベン ト を宣言す る
こ と がで き ます。 こ の よ う な イ ベン ト を ユーザ イ ベン ト と 呼びます。
ユーザ イ ベン ト を定義す る目的の 1 つは、 あ
る アプ リ ケーシ ョ ン が同 じ タ ス ク を い く つかの異な る 場所に記述 し て
い る場合に、それ ら を 1 箇所に ま と めて コ ー ド 記述を減 ら す こ と です。
た と えば、 デー タ ベー ス を更新す る と い う タ ス ク は、 ボ タ ン を ク リ ッ
ク し た り 、 メ ニ ュ ー項目を選択 し た り 、 ウ ィ ン ド ウ を閉 じ た り す る と
実行 さ れま す。 こ う し た場合に、 ボ タ ンや メ ニ ュ ー項目や ウ ィ ン ド ウ
と い っ た各場所にデー タ ベース を更新す る ス ク リ プ ト を記述 し な く て
も 、 ユーザ イ ベン ト を 1 つ定義 し てお き 、 デー タ ベース を更新す る 各
場所でその イ ベン ト を起動すれば よ いのです。
ユーザ イ ベン ト の使い方
こ の ス テ ッ プでは、チ ュ ー ト リ アル デー タ ベース に対 し て検索、挿入、
更新、 削除の処理を行 う ユーザ イ ベン ト を定義 し ます。 こ れ ら の変更
は ウ ィ ン ド ウ ペ イ ン タ の ス ク リ プ ト ビ ューで行い ます。 こ のチ ュ ー ト
リ アルの後半で、 こ れ ら の イ ベン ト を発生 さ せ る コ ー ド を メ ニ ュ ー ペ
イ ン タ で追加 し ます。
1
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スで
「w_master_detail_ancestor」 を選択 し ます。
2
メ ニ ュ ー バーの [挿入|イ ベン ト ] を選択 し ます。
または
ス ク リ プ ト ビ ュ ーの 2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「 (新規
イ ベン ト )」 を選択 し ます。
ス ク リ プ ト ビ ュ ーに、 新 し い イ ベン ト を定義す る ためのプ ロ ト タ
イ プ ウ ィ ン ド ウ が表示 さ れます。
134
PowerBuilder
レ ッ スン 5
先祖ウ ィ ン ド ウの変更
3 番目の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス の右にあ る 1 番目のボ タ
ンは、 プ ロ ト タ イ プ ウ ィ ン ド ウ の表示 / 非表示を切 り 替え る ト グ
ル ス イ ッ チです。
3
プ ロ ト タ イ プ ウ ィ ン ド ウの [イ ベン ト 名] テキス ト ボ ッ ク スに
「ue_retrieve」 と 入力 し ます。
プ ロ ト タ イ プ ウ ィ ン ド ウ下部のス ク リ プ ト ビ ュ ー内を ク リ ッ ク し ます。
次のよ う に入力 し ます (または、 次に説明 し ている オー ト ス ク リ プ ト を使
用 し ます)。
IF dw_master.Retrieve() <> -1 THEN
dw_master.SetFocus()
dw_master.SetRowFocusIndicator(Hand!)
END IF
オー ト ス ク リ プ ト の使い方
オー ト ス ク リ プ ト を使用す る と 、 次の よ う に IF THEN テ ン プ レー
ト 、 お よ び変数や関数名を貼 り 付け る こ と がで き ます。
「IF」 と 入力 し てか ら 、 〔Ctrl〕 + 〔Space〕 を押 し ます。
〔Tab〕 を押 し て IF THEN 文を貼 り 付け ます。
「dw_m」 と 入力 し てか ら 、 〔Ctrl〕 + 〔Space〕 を押 し ます。
「dw_master」 の後ろにカー ソ ルを置 き 、 ド ッ ト を 1 個入力 し て
か ら 、 〔Ctrl〕 + 〔Space〕 を押 し ます。
ス ク ロ ール し て retrieve( ) を選択 し 、 〔Tab〕 を押 し 、 行の残 り
を入力 し ます。
〔Ctrl〕 + 〔M〕 を押 し て次の コ メ ン ト に移動 し ます。
別の関数呼び出 し を入力す る か、オー ト ス ク リ プ ト を使用 し て
入力 し ます。
PowerBuilder 入門
135
ユーザ イ ベ ン ト および イ ベン ト ス ク リ プ ト の追加
ス ク リ プ ト 領域を ク リ ッ ク す る と 、 ス ク リ プ ト ビ ューの 2 番目の
ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス のテ キ ス ト が 「 (新規 イ ベン ト ) 」
か ら 「ue_retrieve」 に変わ り ます。 こ の関数に引数はな く 、 値は返
し ま せん。 ま た、 ユーザ定義の例外 も 送出 し ま せん。 ユーザ定義
の例外の送出についての詳細は、 レ ッ ス ン 10 「例外処理」 を参照
し て く だ さ い。
入力 し た ス ク リ プ ト 行は Retrieve 関数を実行 し 、検索 し た行をデー
タ ウ ィ ン ド ウ コ ン ト ロ ール dw_master に配置 し ま す。 検索に成功
し た場合は、 デー タ ウ ィ ン ド ウ コ ン ト ロ ールの 1 行目に フ ォ ーカ
ス がセ ッ ト さ れ、現在の行を示すハン ド ポ イ ン タ が表示 さ れ ます。
検索に失敗 し た場合
検索に成功 し な か っ た 場合は、 DBError イ ベ ン ト が発生 し ま す。
DBError イ ベン ト はユーザ オブジ ェ ク ト u_dwstandard で処理 さ れ
ます。 こ の ス ク リ プ ト については以前の練習で説明 し ま し た。
4
メ ニ ュ ー バーか ら [フ ァ イル|上書き保存] を選択 し ます。
プ ロ ト タ イ プ ウ ィ ン ド ウを右 ク リ ッ ク し て、ポ ッ プ ア ッ プ メ ニ ュ ーの「新
規イ ベン ト 」 を選択 し ます。
ue_retrieve イ ベン ト に対 し て入力 し た ス ク リ プ ト が コ ン パ イ ル さ
れ ます。 ス ク リ プ ト ビ ューに、 別の新 し いユーザ イ ベン ト のプ ロ
ト タ イ プ ウ ィ ン ド ウ が表示 さ れます。
136
PowerBuilder
レ ッ スン 5
先祖ウ ィ ン ド ウの変更
エ ラ ー メ ッ セージが表示 さ れた場合
ス ク リ プ ト で入力 ミ ス があ っ た場合は コ ンパ イ ル エ ラ ーにな り ま
す。 コ ンパ イ ル エ ラ ーを無視す る か ど う か を尋ね る ダ イ ア ロ グで
[いいえ] を選択す る と 、 ス ク リ プ ト ビ ューの一番下に コ ンパ イ ル
エ ラ ー領域 が 表示 さ れ、 エ ラ ー が 特定 さ れ ま す。 こ の 場合は、
ue_retrieve イ ベン ト の ス ク リ プ ト を入力 し 直 し ます。
コ ンパ イ ル エ ラ ー領域の表示 / 非表示を切 り 替え る には、 ス ク リ
プ ト ビ ューの右上の 2 番目の ト グル ス イ ッ チを ク リ ッ ク し ます。
5
以下を入力 し て手順 3 と 4 を繰 り 返 し ます。
イ ベン ト 名
ue_insert
スク リ プ ト
dw_detail.Reset()
dw_detail.InsertRow(0)
dw_detail.SetFocus()
ue_update
IF dw_detail.Update() = 1 THEN
COMMIT using SQLCA;
MessageBox (" 保存 "," 保存に成功 し ま し た ")
ELSE
ROLLBACK using SQLCA;
END IF
ue_delete
dw_detail.DeleteRow(0)
ス ク リ プ ト の処理内容 ue_insert イ ベン ト の ス ク リ プ ト の 1 行目は、
デー タ ウ ィ ン ド ウ コ ン ト ロ ール dw_detail を ク リ ア し ます。 2 行目
ではデー タ ウ ィ ン ド ウ コ ン ト ロ ールの最終行の後に新規の行を挿
入 し ます(引数 0 は最終行を指定)。3 行目ではカー ソ ルを dw_detail
コ ン ト ロ ールに置 き ます。
ue_insert お よ び ue_delete イ ベン ト はデー タ ベース ではな く 、 デー
タ ウ ィ ン ド ウ バ ッ フ ァ を操作 し ます。 こ れ ら の イ ベン ト が発生 し
て も 、 デー タ ベー ス への行の挿入や、 デー タ ベー ス か ら の行の削
除は行われ ません。 一緒に Update 関数 も 呼び出 さ れて初めてデー
タ ベース が更新 さ れ ます (Update 関数は ue_update イ ベン ト に よ っ
て呼び出 さ れます)。 Update 関数が整数 1 を返す と 、 バ ッ フ ァ に対
す る 変更はデー タ ベー ス に コ ミ ッ ト さ れ ま す。 ほかの整数値が返
さ れ る と 、 バ ッ フ ァ に対す る 変更は ロ ールバ ッ ク さ れます。
ue_delete イ ベン ト の ス ク リ プ ト では、 DeleteRow 関数の引数 0 に
よ っ て、 dw_detail コ ン ト ロ ールの現在の行が削除 さ れ る こ と を指
定 し てい ます。
6
PowerBuilder 入門
[保存] ボ タ ン を ク リ ッ ク し ます。
137
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う ス ク リ プ ト の追加
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う
ス ク リ プ ト の追加
現在の学習個所
探索パスへのラ イ ブ ラ リ の追加
先祖シー ト ウ ィ ン ド ウの新規作成
ユーザ イ ベン ト および イ ベン ト ス ク リ プ ト の追加
> デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う ス ク リ プ ト の追加
シー ト ウ ィ ン ド ウのサイズに合わせた実行時の設定の調整
先ほ ど 入力 し た ス ク リ プ ト はデー タ ウ ィ ン ド ウ コ ン ト ロ ール
dw_master に対 し て何 も 作用 し ませんが、 ue_retrieve イ ベン ト の ス ク リ
プ ト があ る ので、 こ の イ ベン ト を発生 さ せ る だけでデー タ ウ ィ ン ド ウ
dw_master にデー タ を取 り 出す こ と がで き ます。
ue_retrieve イ ベン ト は、シー ト ウ ィ ン ド ウ の Open イ ベン ト か ら 発生 さ
せます。 こ れで ウ ィ ン ド ウ (ま たはその子孫ウ ィ ン ド ウ) が開 く と 同時
に、 デー タ ウ ィ ン ド ウ dw_master にデー タ が取 り 出 さ れ ま す。 次に、
dw_master の RowFocusChanged イ ベン ト に、データ ウ ィ ン ド ウ dw_detail
にデー タ を取 り 出すための ス ク リ プ ト を追加 し ま す。 デー タ ウ ィ ン ド
ウ dw_master 内で フ ォーカ ス が変更 さ れ る たびに RowFocusChanged イ
ベン ト が発生 し ます。
デー タ ウ ィ ン ド ウ表示 と 同時に RowFocusChanged イ ベン ト が発生
初めてデー タ ウ ィ ン ド ウ w_master が表示 さ れ る と き に も
RowFocusChanged イ ベン ト が発生 し ます。 こ れに よ り 、 アプ リ ケー
シ ョ ンはマ ス タ デー タ ウ ィ ン ド ウ で検索 さ れた最初の行についての
詳細情報を検索お よ び表示で き ます。
こ の節での作業が完了す る と 、 ス ク リ プ ト は w_master_detail_ancestor
ウ ィ ン ド ウ お よ びその子孫で以下の処理を行い ます。
138
•
初めて シー ト ウ ィ ン ド ウ を開いた と き に、 上のデー タ ウ ィ ン ド ウ
コ ン ト ロ ールに リ ス ト (すべての顧客 ま たは商品の リ ス ト ) が表
示 さ れ ま す。 リ ス ト の最初の項目の詳細情報は、 下のデー タ ウ ィ
ン ド ウ コ ン ト ロ ールに表示 さ れ ます。
•
ユーザが上矢印ま たは下矢印キーを使用 し て、 ま たは行を ク リ ッ
ク し て、 上のデー タ ウ ィ ン ド ウ コ ン ト ロ ールの リ ス ト 内を移動す
る と 、 下のデー タ ウ ィ ン ド ウ コ ン ト ロ ールに現在の行の詳細が表
示 さ れます。
PowerBuilder
レ ッ スン 5
1
先祖ウ ィ ン ド ウの変更
w_master_detail_ancestor のス ク リ プ ト ビ ュ ーで、 2 番目の ド ロ ッ プダ
ウン リ ス ト ボ ッ ク スから 「open」 を選択 し ます。
Open イ ベン ト の ス ク リ プ ト ア イ コ ンは紫色にな っ てい ます。 こ れ
は、 先祖 ス ク リ プ ト が あ る こ と を示 し てい ま す。 先祖 ス ク リ プ ト
を確認 し てみ る と 、 ue_postopen イ ベン ト を呼び出 し 、 それを ウ ィ
ン ド ウ の メ ッ セージ キ ュ ーの最後にポ ス ト し てい る こ と がわか り
ます。
2
次のコ ード を 、 w_master_detail_ancestor の Open イ ベン ト スク リ プ ト
領域に入力 し ます。
dw_master.settransobject ( sqlca )
dw_detail.settransobject ( sqlca )
this.EVENT ue_retrieve()
最初の 2 行で、 デー タ ウ ィ ン ド ウ dw_master お よ び dw_detail に対
し て、SQLCA ト ラ ンザ ク シ ョ ン オブジ ェ ク ト 内のデー タ ベース変
数の値を検索す る よ う に指示 し てい ます。3 行目は ue_retrieve イ ベ
ン ト を発生 さ せます。 代名詞 This は現在のオブジ ェ ク ト を参照 し
ます。 こ の例では、 w_master_detail_ancestor ウ ィ ン ド ウ が現在のオ
ブジ ェ ク ト です。
3
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スで
「dw_master」 を選択 し ます。
2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで 「rowfocuschanged」 を選択
し ます。
こ こ でデー タ ウ ィ ン ド ウ コ ン ト ロ ール dw_master の
RowFocusChanged イ ベン ト の ス ク リ プ ト を追加 し ます。 こ の ス ク
リ プ ト は検索要求 と 選択 し た行の ID 番号をデー タ ウ ィ ン ド ウ コ
ン ト ロ ール dw_detail に送 り ます。
イ ベン ト 名に注意
RowFocusChanging イ ベン ト ではな く 、 RowFocusChanged イ ベン ト
を選択す る よ う 注意 し て く だ さ い。
4
RowFocusChanged イ ベン ト のス ク リ プ ト 領域に次の行を入力 し ます。
long ll_itemnum
こ の行は、 long 型の ロ ーカル変数 ll_itemnum (l は文字であ り 、 数
字ではない) を宣言 し ます。
PowerBuilder 入門
139
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う ス ク リ プ ト の追加
5
手順 4 で入力 し た変数宣言の下に次の行を入力 し ます。
ll_itemnum = this.object.data[currentrow, 1]
角括弧 ([ ]) の使用
上記の式では、 ( ) ではな く [ ] を使用 し ます。
こ の行は、 デー タ ウ ィ ン ド ウ のデー タ 式を使用 し て、 dw_master で
現在選択 さ れてい る 行のカ ラ ム 1 の項目番号を取得 し ます。 値は
変数 ll_itemnum に格納 さ れ ます。
CurrentRow は RowFocusChanged イ ベン ト に渡 さ れ る 引数で、 デー
タ ウ ィ ン ド ウ コ ン ト ロ ール内の現在の行を指定 し ます。 現在の行
と は、 ク リ ッ ク し た り 、 矢印キーや 〔Tab〕 を使用 し て ス ク ロ ール
し た り し てユーザが選択 し た行です。
6
手順 5 で入力 し たデー タ 式の下に以下の行を入力 し ます。
IF dw_detail.Retrieve(ll_itemnum) = -1 THEN
MessageBox (" 検索 "," 検索が失敗 し ま し た -detail")
END IF
こ れ ら の行は、 検索要求 を、 デー タ ウ ィ ン ド ウ が期待す る 引数
(ll_itemnum 変数に格納 さ れてい る ID 番号) と と も にデー タ ウ ィ
ン ド ウ dw_detail に送 り ます。 Retrieve 関数を囲む IF 文は正常に処
理 さ れたか ど う か を チ ェ ッ ク し ま す。 検索に失敗 し た場合は、 エ
ラ ー メ ッ セージ ボ ッ ク ス が表示 さ れます。
140
PowerBuilder
レ ッ スン 5
7
先祖ウ ィ ン ド ウの変更
ペ イ ン タ バー 1 の [保存] ボ タ ン を ク リ ッ ク し ます。
ペ イ ン タ バー 1 の [閉 じ る] ボ タ ン を ク リ ッ ク し ます。
ス ク リ プ ト が コ ンパ イ ル さ れて保存 さ れます。
8
パワーバーの [ワー ク スペースの フル構築] ボ タ ン を ク リ ッ ク し ます。
先祖オブジ ェ ク ト を変更 し た ら 、 すべてのオブジ ェ ク ト を再構築
す る よ う に し て く だ さ い。
PowerBuilder 入門
141
シー ト ウ ィ ン ド ウのサイ ズに合わせた実行時の設定の調整
シー ト ウ ィ ン ド ウのサイ ズに合わせた実行時の設定の調整
現在の学習個所
探索パスへのラ イ ブ ラ リ の追加
先祖シー ト ウ ィ ン ド ウの新規作成
ユーザ イ ベン ト および イ ベン ト ス ク リ プ ト の追加
デー タ ウ ィ ン ド ウ コ ン ト ロールのデー タ の検索を行 う ス ク リ プ ト の追加
> シー ト ウ ィ ン ド ウのサイズに合わせた実行時の設定の調整
テ ン プ レ ー ト ア プ リ ケーシ ョ ン ウ ィ ザー ド に よ っ て作成 さ れ る シー
ト マネージ ャ は、 シー ト ウ ィ ン ド ウ を開 く OpenSheet 関数を作成 し ま
す。 OpenSheet 関数は、 実行時のシー ト ウ ィ ン ド ウ サ イ ズ を設定す る
引数を と り ま す。 ウ ィ ザー ド は こ の引数にデフ ォ ル ト で Cascaded! と
い う 値を設定 し ます。 こ の値は、 デザ イ ン時に設定 し た シー ト ウ ィ ン
ド ウ のサ イ ズ を上書 き し ます。 こ こ では、 こ の値を変更 し て、 実行時
の ウ ィ ン ド ウ サ イ ズ がデザ イ ン 時のサ イ ズ と 同 じ に な る よ う に し ま
す。
1
シ ス テム ツ リ ーで n_pbtutor_sheetmanager を ダブルク リ ッ ク し ます。
または
シ ス テム ツ リ ーの n_pbtutor_sheetmanager を右ク リ ッ ク し て、 ポ ッ プ
ア ッ プ メ ニ ュ ーか ら [編集] を選択 し ます。
2
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スで
「(Functions)」 を選択 し ます。
2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで 「of_opensheet」 を選択 し ま
す。
3
ス ク リ プ ト 領域内の次の行に移動 し ます。
li_rc = OpenSheet ( lw_sheet, as_sheetname, w_pbtutor_frame, 0, Cascaded! )
4
Cascaded! 引数を Original! に変更 し ます。
li_rc = OpenSheet ( lw_sheet, as_sheetname, w_pbtutor_frame, 0, Original! )
5
ペ イ ン タ バー 1 の [保存] ボ タ ン を ク リ ッ ク し ます。
ペ イ ン タ バー 1 の [閉 じ る] ボ タ ン を ク リ ッ ク し ます。
次回チ ュ ー ト リ アル アプ リ ケーシ ョ ン を実行す る と 、 デザ イ ン時
に設定 し たサ イ ズでシー ト ウ ィ ン ド ウ が開 き ます。 ただ し 、 開い
てい る ほかのシー ト と 重ねて表示 さ れ る 点は同 じ です。
142
PowerBuilder
レ ッ ス ン 6
メ ニ ュ ーの設定
こ の レ ッ ス ン では、 チ ュ ー ト リ アル アプ リ ケーシ ョ ン で使用す る
メ ニ ュ ーの設定を行い ま す。 こ の レ ッ ス ン では、 以下の項目につ
いて学習 し ます。
•
フ レ ーム メ ニ ュ ーの修正
•
シ ート メ ニ ュ ーの新規作成
•
ユーザ イ ベン ト を 発生さ せる メ ニュ ー ス ク リ プト の追加
•
新規メ ニ ュ ーのア タ ッ チと ア プリ ケ ーショ ン の実行
メ ニ ュ ーは独立 し たオブジ ェ ク ト で、 メ ニ ュ ー ペ イ ン タ を使用 し
て作成 し ま す。 作成 し た メ ニ ュ ーは複数の ウ ィ ン ド ウ で使用で き
ま す。 アプ リ ケーシ ョ ン開発プ ロ セ ス の ど の時点で も メ ニ ュ ーを
作成で き ます。
所要時間
約 25 分
PowerBuilder 入門
143
フ レーム メ ニ ュ ーの修正
フ レーム メ ニ ュ ーの修正
現在の学習個所
> フ レ ーム メ ニ ュ ーの修正
シ ート メ ニュ ーの新規作成
ユーザ イ ベン ト を 発生さ せる メ ニュ ー スク リ プ ト の追加
新規メ ニ ュ ーのア タ ッ チと ア プ リ ケーシ ョ ン の実行
現在の フ レーム メ ニ ュ ーはテ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー
ド に よ っ て 自動的 に 作成 さ れ た メ ニ ュ ー で す。 m_pbtutor_frame メ
ニ ュ ーは、 チ ュ ー ト リ アルで作業す る ほかのすべての メ ニ ュ ーの先祖
オ ブ ジ ェ ク ト な の で、 こ の メ ニ ュ ー を 変更す る と 自動的 に 子孫 メ
ニ ュー も 変更 さ れます。
メ ニ ュ ー ペ イ ン タ の プ レ ビ ュ ー ビ ュ ーでは、 アプ リ ケーシ ョ ン を実
行 し た と き に 表示 さ れ る と お り に メ ニ ュ ー が 表示 さ れ ま す。 こ の
チ ュー ト リ アルでは、 プ レ ビ ュ ー ビ ュ ーを使用 し てアプ リ ケーシ ョ ン
メ ニ ュ ーに変更を加え ますが、ツ リ ー メ ニ ュ ー ビ ュ ーで同様の変更を
加え る こ と も で き ま す。 ツ ールバー ボ タ ン を 変更す る と き はプ ロ パ
テ ィ ビ ュ ーを使用 し ます。
こ の練習では、 以下の操作を行い ます。
• [ フ ァ イ ル] メ ニ ュ ーの修正
• [ ヘルプ] メ ニ ュ ー項目の有効化
144
PowerBuilder
レ ッ スン 6
メ ニ ュ ーの設定
[ フ ァ イル] メ ニ ュ ーの修正
こ の ス テ ッ プでは、 m_pbtutor_frame メ ニ ュ ーの [フ ァ イ ル] カ ス ケー
ド メ ニ ューを変更 し ます。
1
シ ス テム ツ リ ーで m_pbtutor_frame を ダブルク リ ッ ク し ます。
メ ニ ュー ペ イ ン タ に、 アプ リ ケーシ ョ ン の MDI フ レーム ウ ィ ン
ド ウ に関連付け ら れてい る メ ニ ューが表示 さ れ ます。
m_pbtutor_sheet は m_pbtutor_frame を継承 し てい る ので、フ レーム
メ ニ ューに変更を加え る と 、 シー ト メ ニ ュー も 変更 さ れ ます。
プ レ ビ ュ ー ビ ューが開いていない場合は、 メ ニ ュ ー ペ イ ン タ の メ
ニ ュ ー バーの [ビ ュ ー] メ ニ ュ ーか ら 選択で き ます。
2
m_pbtutor_frame のプ レ ビ ュ ー ビ ュ ーで [フ ァ イル] メ ニ ュ ーを ク リ ッ
ク し ます。
プ レ ビ ュ ー ビ ュ ー で メ ニ ュ ー項目 を ク リ ッ ク す る と 、 そ の メ
ニ ュ ー項目が実行時 と 同 じ よ う に表示 さ れます。
[ フ ァ イル] メ ニ ュ ーの メ ニ ュ ー項目が表示 さ れない場合
プ レ ビ ュ ー ビ ュ ーを表示す る と き は [フ ァ イ ル] メ ニ ュ ーが選択
さ れてい ま す。 そのほかの メ ニ ュ ー (編集、 ウ ィ ン ド ウ 、 ま たは
ヘルプ) の 1 つを ク リ ッ ク し てか ら 再び [フ ァ イ ル] メ ニ ュ ーを
ク リ ッ ク す る と 、 メ ニ ュ ー項目が表示 さ れ る こ と があ り ます。
3
[ フ ァ イル] メ ニ ュ ーの [新規作成] を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーの [ メ ニ ュ ー項目テキス ト の編集] を選択 し ます。
「レ ポー ト (&R)」 と 入力 し て 〔Enter〕 を押 し ます。
[新規作成] メ ニ ュ ー項目の表示名を [レ ポー ト ] に変更 し て く だ
さ い。 メ ニ ュ ー名は m_new の ま ま変更 さ れず、 その目的 (新 し い
シー ト を開 き ます) も 変更 さ れません。
ア ンパサン ド 文字を使用 し たア ク セ ラ レー タ キーの定義
ア ンパサン ド (&) の次の文字がア ク セ ラ レー タ キー (ニーモニ ッ
ク ) と し て使用 さ れ、 プ レ ビ ュ ー表示では下線付 き で表示 さ れ ま
す。 ア プ リ ケーシ ョ ン の実行時には、 〔Alt〕 + 〔F〕 + 〔R〕 を押す
と 、 [フ ァ イ ル|レ ポー ト ] メ ニ ュ ーにア ク セ ス で き ます。
4
PowerBuilder 入門
プ ロパテ ィ ビ ュ ーの [テキス ト ] テキス ト ボ ッ ク スに 「レポー ト (&R)」
と 表示 さ れている こ と を確認 し ます。
145
フ レーム メ ニ ュ ーの修正
プ ロパテ ィ ビ ュ ーの [ツールバー] タ ブ を ク リ ッ ク し ます。
ツールバー項目のテ キ ス ト は、 「新規作成 , 新規シー ト 」 です。 [ピ
ク チ ャ 名] ボ ッ ク ス では何 も 選択 さ れていないので、 実行時に [レ
ポー ト ] メ ニ ュ ー項目で ツールバー ボ タ ンは表示 さ れ ません。 [レ
ポー ト ] メ ニ ュ ー項目は、 新 し いシー ト を開 く コ マ ン ド と し てで
はな く 、 カ ス ケー ド メ ニ ュ ー項目にア ク セ スす る ために使用す る
ので、 こ こ に ツールバー ボ タ ンは追加 し ません。
5
プ レ ビ ュ ー ビ ュ ーで [フ ァ イル] メ ニ ュ ーの [開 く ] メ ニ ュ ー項目を ク
リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーで [全般] タ ブ を ク リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーの [全般] ページ で [表示可能] チ ェ ッ ク ボ ッ ク スの
チ ェ ッ ク をはず し ます。
プ ロパテ ィ ビ ュ ーの [全般] ページ で [使用可能] チ ェ ッ ク ボ ッ ク スの
チ ェ ッ ク をはず し ます。
すべて の実行時 メ ニ ュ ーで こ の項目 を 非表示に し ま す。 [表示可
能] プ ロ パテ ィ のチ ェ ッ ク をはずす と 、 プ レ ビ ュ ー ビ ュ ーで、 こ
の メ ニ ュ ー項目が淡色表示 さ れます。 実行時には表示 さ れません。
6
プ ロパテ ィ ビ ュ ーの [ツールバー] タ ブ を ク リ ッ ク し ます。
[表示可能] チ ェ ッ ク ボ ッ ク スのチ ェ ッ ク をはず し ます。
こ れ で、 こ の メ ニ ュ ー項目の ツ ールバー ボ タ ン が フ レ ー ム メ
ニ ュ ーの ツールバーに表示 さ れな く な り ま す (対応す る メ ニ ュ ー
項目が表示ま たは有効化 さ れない場合で も 、 ボ タ ン を ツールバー
に表示で き ます)。
7
プ レ ビ ュ ー ビ ュ ーで、 [フ ァ イル] メ ニ ュ ーの [終了] を ク リ ッ ク し ます。
プ ロ パテ ィ ビ ュ ーの [ツールバー] ページが開いた ま ま にな っ て
いれば、 [項目テ キ ス ト ] お よ び [ピ ク チ ャ 名] の値が m_exit メ
ニ ュー項目の値に替わ り ます。
146
PowerBuilder
レ ッ スン 6
メ ニ ュ ーの設定
[ヘルプ] メ ニ ュ ー項目の有効化
[ヘルプ] メ ニ ュ ーには 3 つの項目があ り ますが、 有効にな っ てい る 項
目は [バージ ョ ン情報] の 1 つだけです。 こ の ス テ ッ プでは、 テ ン プ
レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド お よ び Tutorial デ ィ レ ク ト リ 内の
pbtutor.hlp フ ァ イ ルが提供 し た コ メ ン ト 化 コー ド を使用 し て、そのほか
の メ ニ ュ ー項目を有効に し ます。
ShowHelp 関数を使用 し て アプ リ ケーシ ョ ン のヘルプ ト ピ ッ ク を呼び
出 し 、 ヘルプの目次ま たは イ ンデ ッ ク ス を表示す る か、 特定の ト ピ ッ
ク ま たは キー ワ ー ド を 表示す る か を識別す る カ タ ロ グ値を渡 し ま す。
ShowHelp は、 Windows のヘルプ ま たは コ ンパ イ ル さ れた HTML ヘル
プ (CHM) フ ァ イ ルを開 く こ と がで き ます。
1
プ レ ビ ュ ー ビ ュ ーの [ヘルプ] メ ニ ュ ーの [目次] メ ニ ュ ー項目を ダ ブ
ル ク リ ッ ク し ます。
[目次] メ ニ ュー項目は使用可能にな っ ていな く て も ダブル ク リ ッ
ク で き ます。 ス ク リ プ ト ビ ュ ーに [目次] メ ニ ュー項目がフルネー
ムで表示 さ れ ます。 フルネーム には、 [ヘルプ] メ ニ ューであ る こ
と を示す m_help 接頭辞 も 含ま れます。
2
まだ選択 さ れていない場合は 2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで
「Clicked」 を選択 し ます。
3
ShowHelp 関数を含む行に カ ー ソ ルを置き、 パワーバーの [ コ メ ン ト 解
除] ボ タ ン を ク リ ッ ク し ます。
次のよ う に myapp.hlp を pbtutor.hlp に変更 し ます。
ShowHelp ("pbtutor.hlp", Index!)
す る と 、 ヘルプ フ ァ イ ルにデフ ォ ル ト ト ピ ッ ク が表示 さ れ ます。
4
プ ロパテ ィ ビ ュ ーの [全般] ページ で、 m_helpindex メ ニ ュ ー項目の
[使用可能] チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。
5
[ ト ピ ッ ク の検索] メ ニ ュ ー項目について も 以上の手順を繰 り 返 し ます。
ShowHelp 呼び出 し は次の よ う にな り ます。
ShowHelp ("pbtutor.hlp", Keyword!, "")
ヘルプ フ ァ イ ルのキー ワー ド であ る 文字列が こ の呼び出 し の 3 番
目の引数に含 ま れてい る 場合は、 関連付け ら れた ト ピ ッ ク が表示
さ れ ま す。 こ こ では こ の引数が空の文字列なので、 ト ピ ッ ク の検
索 ウ ィ ン ド ウ が表示 さ れ ます。
PowerBuilder 入門
147
フ レーム メ ニ ュ ーの修正
6
148
PowerBuilder の メ イ ン メ ニ ュ ー バーの [フ ァ イル|上書き保存] を選
択 し ます。
PowerBuilder の メ イ ン メ ニ ュ ー バーの [ フ ァ イル|閉 じ る] を選択 し
ます。
PowerBuilder
レ ッ スン 6
メ ニ ュ ーの設定
シー ト メ ニ ュ ーの新規作成
現在の学習個所
フ レ ーム メ ニュ ーの修正
> シ ート メ ニュ ーの新規作成
ユーザ イ ベン ト を 発生さ せる メ ニ ュ ー スク リ プ ト の追加
新規メ ニュ ーのア タ ッ チと ア プ リ ケーシ ョ ン の実行
こ の ス テ ッ プ では、 ユーザが顧客 ま た は商品情報 を 見 る た めに MDI
シー ト を開いた と き に表示 さ れ る メ ニ ュ ーを新規作成 し ます。 作成す
る メ ニ ュ ーは、テ ン プ レー ト アプ リ ケーシ ョ ン ウ ィ ザー ド に よ っ て生
成 さ れた m_pbtutor_sheet メ ニ ュ ーの子孫オブジ ェ ク ト です。
m_pbtutor_sheet メ ニ ュ ーは m_pbtutor_frame を継承 し てい ますが、い く
つかの メ ニ ュ ー項目が追加 さ れてい ま す。 作成す る メ ニ ュ ーには、 先
祖 メ ニ ュ ーにない メ ニ ュ ー項目を追加 し ます。
こ の練習では、 以下の操作を行い ます。
PowerBuilder 入門
•
継承さ れる 新規メ ニ ュ ーの作成およ び保存
•
新規メ ニ ュ ーへのメ ニ ュ ー項目の追加
•
新規メ ニ ュ ー項目のツ ールバーの追加
149
シー ト メ ニ ュ ーの新規作成
継承 さ れる新規 メ ニ ュ ーの作成お よび保存
アプ リ ケーシ ョ ンのシー ト メ ニ ューか ら 継承すれば、 先祖 メ ニ ュ ーを
変更せず に そ の シ ー ト メ ニ ュ ーの 特性 を 保持で き ま す。 新 し い メ
ニ ュ ーを ただちに保存 し 、 修正 し た後で再び保存す る こ と をお勧め し
ます。
1
パワーバーの [オブ ジ ェ ク ト の継承] ボ タ ン を ク リ ッ ク し ます。
オブジ ェ ク ト か ら 継承 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
2
[オブ ジ ェ ク ト の種類] ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「 メ ニ ュ ー」 が
選択 さ れている こ と を確認 し ます。
[オブ ジ ェ ク ト ] リ ス ト ボ ッ ク スで 「m_pbtutor_sheet」 を選択 し て [OK]
を ク リ ッ ク し ます。
m_pbtutor_sheet の す べ て の 性質 を 備 え た タ イ ト ル 未 設 定 の メ
ニ ューが表示 さ れます。
継承 さ れたシー ト メ ニ ュ ーでは [ ウ ィ ン ド ウ ] メ ニ ュ ー項目が有
効に な っ て お り 、 m_pbtutor_sheet メ ニ ュ ーの場合 と 同 じ よ う に
ウ ィ ン ド ウ を並べて表示 し た り 、 重ねて表示 し た り す る こ と がで
き ます。 こ れ ら の メ ニ ュー項目は m_pbtutor_frame メ ニ ュ ーでは無
効化 さ れてい ま し た。
MDI フ レーム メ ニ ュ ーに対する変更
プ レ ビ ュ ー ビ ュ ーで [フ ァ イ ル] メ ニ ュ ーを ク リ ッ ク す る と 、 1
番目の メ ニ ュ ー項目が [レ ポー ト ] にな っ てい ます。 [開 く ] 項目
は、 淡色表示の場合は非表示で あ る こ と を示 し 、 グ レ ー表示の場
合 は 無 効 化 さ れ て い る こ と を 示 し ま す。 こ れ ら の 性 質 は
m_pbtutor_frame か ら 継承チ ェーン を通 じ て伝え ら れた も のです。
3
メ ニ ュ ー バーの [フ ァ イル|上書き保存] を選択 し ます。
メ ニ ュ ーの保存 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
4
[ メ ニ ュ ー] ボ ッ ク スに メ ニ ュ ー名 と し て 「m_my_sheet」 と 入力 し ます。
[ コ メ ン ト ] ボ ッ ク スに次のよ う に入力 し ます。
w_master_detail_ancestor および子孫オブ ジ ェ ク ト の新 し い
シー ト メ ニ ュ ー
150
PowerBuilder
レ ッ スン 6
5
メ ニ ュ ーの設定
[OK] を ク リ ッ ク し ます。
こ れで メ ニ ューに名前が付け ら れます。 m_ は メ ニ ュ ーの標準的な
接頭辞です。
新規 メ ニ ュ ーに付けた名前が メ ニ ュ ー ペ イ ン タ の ワー ク スペース
の タ イ ト ルバーに表示 さ れ、 m_my_sheet メ ニ ュ ーがシ ス テ ム ツ
リ ーに表示 さ れ ます。
新規 メ ニ ュ ーへの メ ニ ュ ー項目の追加
こ こ では、 m_pbtutor_sheet か ら 継承 し た メ ニ ュ ーの [編集] メ ニ ュ ー
に項目を追加 し ます。 プ レ ビ ュ ーお よ びプ ロ パテ ィ ビ ュ ーを使用 し ま
す。
1
新規 メ ニ ュ ーのプ レ ビ ュ ー ビ ュ ーで [編集] メ ニ ュ ーを ク リ ッ ク し ます。
アプ リ ケーシ ョ ン実行時 と 同 じ よ う に [編集] メ ニ ュ ーの メ ニ ュ ー
項目の リ ス ト が表示 さ れます。 [編集] メ ニ ュ ーの メ ニ ュ ー項目は
すべて表示 さ れますが、 無効です (プ レ ビ ュ ー ビ ュ ーではグ レー
ですがデ ィ ザ表示にはな っ てい ません)。
2
プ レ ビ ュ ー ビ ュ ーで[ 編集]メ ニュ ーのメ ニュ ー項目を 右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーの [ メ ニ ュ ー項目の最後に挿入] を選択 し ます。
[編集] メ ニ ューの リ ス ト の最後に表示 さ れ る 空のボ ッ ク ス にカー
ソ ルが移動 し ます。
3
ハイ フ ン (-) を入力 し て 〔Enter〕 を押 し ます。
ハ イ フ ン が区分線に変わ り ます。プ ロ パテ ィ ビ ューでは、メ ニ ュ ー
項目の名前が m_- に変わ り ま す。 メ ニ ュ ー項目間の区分線 も 、 名
前は一意でなければな り ません。 メ ニ ュ ー内のほかの区分線には、
接頭辞 m_- の後に一意の イ ンデ ッ ク ス番号が付け ら れ ます。
PowerBuilder 入門
4
プ ロ パ テ ィ ビ ュ ー で新 し い区分線の [使用可能] チ ェ ッ ク ボ ッ ク スの
チ ェ ッ ク をはず し ます。
5
プ レ ビ ュ ー ビ ュ ーで新 し い区分線を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーの [ メ ニ ュ ー項目の最後に挿入] を選択 し ます。
新 し い区分線の下に表示 さ れるボ ッ ク スに「挿入 (&I)」 と 入力 し 、〔Enter〕
を押 し ます。
151
シー ト メ ニ ュ ーの新規作成
メ ニ ュ ー項目名の [名前] が自動的に m_ 挿入 i に設定 さ れ ます。
デフ ォ ル ト の名前が正 し く ない と い う メ ッ セージが表示 さ れた場
合は、 かわ り の名前が示 さ れ ま す。 その場合、 示 さ れた名前を使
用す る には [OK] を ク リ ッ ク し ます。
メ ニ ュ ー項目名を挿入する別の方法
プ レ ビ ュ ー ビ ュ ーではな く 、プ ロ パテ ィ ビ ューの [テ キ ス ト ] ボ ッ
ク ス に 「挿入 (&I)」 と 入力 し ます。 こ の場合、 後で 〔Enter〕 を押
す必要は あ り ま せん。 た だ し 、 [名前] ボ ッ ク ス が グ レ ー表示に
な っ てい る 場合は、 ま ず [項目名固定] チ ェ ッ ク ボ ッ ク ス を オ フ
にす る 必要があ り ます。 そ う し ない と メ ニ ュー名は m_ 挿入 i に リ
セ ッ ト さ れ ません。
6
プ ロパテ ィ ビ ュ ーの [マ イ ク ロヘルプ] ボ ッ ク スに 「行の挿入」 と 入力
し ます。
デフ ォ ル ト では、 新規 メ ニ ュ ー項目は表示 さ れ、 有効にな り ます。
ユーザが こ の メ ニ ュ ー項目を選択す る と 、 アプ リ ケーシ ョ ン ウ ィ
ン ド ウ の一番下の [マ イ ク ロ ヘルプ] 行に 「行の挿入」 と い う テ キ
ス ト が表示 さ れ ます。
7
152
以下の メ ニ ュ ー項目について、 手順 5 と 6 を繰 り 返 し ます。
メ ニ ュ ー項目
マ イ ク ロヘルプ テキス ト
更新 (&A)
削除 (&D)
デー タ ベース を更新
現在の行を削除
PowerBuilder
レ ッ スン 6
メ ニ ュ ーの設定
[編集] メ ニ ュ ーに、 デー タ ベース の レ コー ド の更新お よ び削除の
ための メ ニ ュー項目を追加 し ます。有効化 さ れてはい ませんが、文
字 U はすでに メ ニ ュ ー項目 [元に戻す] のア ク セ ラ レー タ キー と
し て使用 さ れてい る ので、 メ ニ ュ ー項目 [更新] に同 じ ア ク セ ラ
レー タ キーを使用 し ないで く だ さ い。 かわ り に文字 A を使用 し ま
す。
PowerBuilder 入門
153
シー ト メ ニ ュ ーの新規作成
新規 メ ニ ュ ー項目のツールバーの追加
こ こ では、 さ き ほ ど定義 し た メ ニ ュ ー項目に対す る ツールバー ボ タ ン
を追加 し 2 番目の ツールバーに配置 し ます。
1
プ レ ビ ュ ー ビ ュ ーの [編集] メ ニ ュ ーの新 し い [挿入] メ ニ ュ ー項目を
ク リ ッ ク し ます。
2
プ ロパテ ィ ビ ュ ーの [ツールバー] タ ブ を ク リ ッ ク し ます。
[項目テキス ト ] ボ ッ ク スに 「挿入」 と 入力 し ます。
[ピ ク チ ャ 名] ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「Insert!」 と 入力また
は選択 し ます。
こ れで Insert! と い う 組み込みピ ク チ ャ を使用す る [挿入] メ ニ ュ ー
項目の ツ ールバー ボ タ ン が定義 さ れ ま す。 実行時の ア プ リ ケ ー
シ ョ ン で ツ ールバーに対 し て [テ キ ス ト の表示] オプシ ョ ン が有
効にな っ てい る と 、 「挿入」 と い う テ キ ス ト がボ タ ン の上に表示 さ
れます。
3
[項目の間隔] ス ピ ン コ ン ト ロールに 「1」 と 入力 し ます。
[項目の順序] ス ピ ン コ ン ト ロールに 「1」 と 入力 し ます。
[項目イ ンデ ッ ク ス] ス ピ ン コ ン ト ロールに 「2」 と 入力 し ます。
追加 さ れた メ ニ ュ ー項目用の新 し い ツールバーを作成 し 、 [挿入]
ボ タ ン を こ の ツールバーの最初の項目に し ます。
4
プ レ ビ ュ ー ビ ュ ーの[ 編集] メ ニュ ーの[ 更新] メ ニュ ー項目を ク リ ッ ク
し ます。
プ ロパテ ィ ビ ュ ーで も選択 さ れている こ と を確認 し ます。
5
まだ [ツールバー] ページ を開いていない場合は [ツールバー] タ ブ を ク
リ ッ ク し ます。
[項目テキス ト ] ボ ッ ク スに 「更新」 と 入力 し ます。
[ピ ク チ ャ 名] ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「Update!」 を入力また
は選択 し ます。
こ れで、 Update! と い う 組み込み ピ ク チ ャ を 使用す る [更新] メ
ニ ュ ー項目の ツールバー ボ タ ン が定義 さ れま す。 ボ タ ン のテ キ ス
ト は 「更新」 です。
6
154
[項目の順序] ス ピ ン コ ン ト ロールに 「2」 と 入力 し ます。
[項目イ ンデ ッ ク ス] ス ピ ン コ ン ト ロールに 「2」 と 入力 し ます。
PowerBuilder
レ ッ スン 6
メ ニ ュ ーの設定
新規ツ ールバーの [挿入] ボ タ ン の後に [更新] ボ タ ン を追加 し
ます。
7
プ レ ビ ュ ー ビ ュ ーで [編集] メ ニ ュ ーの新規 [削除] メ ニ ュ ー項目を ク
リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーで も 同 じ メ ニ ュ ー項目が選択 さ れてい る こ と を確認 し
ます。
8
まだ [ツールバー] ページ を開いていない場合は [ツールバー] タ ブ を ク
リ ッ ク し ます。
[項目テキス ト ] ボ ッ ク スで 「削除」 と 入力 し ます。
[ピ ク チ ャ 名] ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「DeleteRow!」 を入力
または選択 し ます。
こ れで、DeleteRow! と い う 組み込みピ ク チ ャ を使用す る [削除] メ
ニ ュ ー項目の ツールバー ボ タ ン が定義 さ れ ます。 ボ タ ンのテ キ ス
ト は 「削除」 です。
9
[項目の順序] ス ピ ン コ ン ト ロールに 「3」 と 入力 し ます。
[項目イ ンデ ッ ク ス] ス ピ ン コ ン ト ロールに 「2」 と 入力 し ます。
新規ツ ールバーの [更新] ボ タ ン の後に [削除] ボ タ ン を追加 し
ます。
10 PowerBuilder メ ニ ュ ー バーの [フ ァ イル|上書き保存] を選択 し ます。
PowerBuilder 入門
155
ユーザ イ ベ ン ト を発生 さ せる メ ニ ュ ー ス ク リ プ ト の追加
ユーザ イ ベン ト を発生 さ せる メ ニ ュ ー ス ク リ プ ト の追加
現在の学習個所
フ レ ーム メ ニ ュ ーの修正
シ ート メ ニュ ーの新規作成
> ユーザ イ ベン ト を 発生さ せる メ ニュ ー スク リ プ ト の追加
新規メ ニ ュ ーのア タ ッ チと ア プ リ ケーシ ョ ン の実行
こ の ス テ ッ プでは、 シー ト ウ ィ ン ド ウ の メ ニ ュ ー バーか ら ユーザ イ
ベン ト を発生 さ せ る ス ク リ プ ト を追加 し ます。 こ れ ら のユーザ イ ベン
ト はレ ッ ス ン 5「 先祖ウ ィ ン ド ウ の 変更」 で追加 し た も の です。 メ
ニ ュ ー ペ イ ン タ では、 m_my_sheet メ ニ ュ ーが ま だ開いてい る はずで
す。 開いていない場合は、 パ ワーバーの [開 く ] ボ タ ン を使用 し て開
き ます。
1
ス ク リ プ ト ビ ュ ーの最初の リ ス ト ボ ッ ク スで 「m_edit.m_ 挿入 i」 を選択
し ます。
または
プ レ ビ ュ ー ビ ュ ーの [挿入] メ ニ ュ ー項目を ダ ブル ク リ ッ ク し ます。
ス ク リ プ ト ビ ュ ーに [挿入] メ ニ ュ ー項目が フルネーム で表示 さ
れ ます。フルネームには、[編集] メ ニ ューであ る こ と を示す m_edit
接頭辞 も 含まれます。
2
まだ選択 さ れていない場合は 2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで
「Clicked」 を選択 し ます。
Clicked イ ベン ト に以下の行を入力 し ます。
w_master_detail_ancestor lw_activesheet
lw_activesheet = w_pbtutor_frame.GetActiveSheet()
lw_activesheet.EVENT ue_insert()
最初の 2 行では、 現在 MDI フ レーム内のど のシー ト がア ク テ ィ ブ
で あ る か を判定 し ま す。 3 行目では、 ア ク テ ィ ブ シー ト に対 し て
ユーザ イ ベン ト ue_insert が発生 し ます。
156
PowerBuilder
レ ッ スン 6
3
メ ニ ュ ーの設定
以下の メ ニ ュ ー項目およびス ク リ プ ト を使用 し て、 手順 1 と 2 を繰 り 返
し ます。
メ ニ ュ ー名
m_edit.m_ 更新 a
Clicked イ ベン ト のス ク リ プ ト
w_master_detail_ancestor lw_activesheet
lw_activesheet = w_pbtutor_frame.GetActiveSheet()
lw_activesheet.EVENT ue_update()
m_edit.m_ 削除 d
w_master_detail_ancestor lw_activesheet
lw_activesheet = w_pbtutor_frame.GetActiveSheet()
lw_activesheet.EVENT ue_delete()
4
PowerBuilder メ ニ ュ ー バーの [フ ァ イル|上書き保存] を選択 し ます。
メ ニ ュー ス ク リ プ ト が コ ンパ イ ル さ れ、 保存 さ れます。
5
PowerBuilder 入門
ペ イ ン タ バー 1 の [閉 じ る] ボ タ ン を ク リ ッ ク し ます。
または
PowerBuilder メ ニ ュ ー バーの [フ ァ イル|閉 じ る] を選択 し ます。
157
新規 メ ニ ュ ーのア タ ッ チ と ア プ リ ケーシ ョ ンの実行
新規 メ ニ ュ ーのア タ ッ チ と ア プ リ ケーシ ョ ンの実行
現在の学習個所
フ レ ーム メ ニ ュ ーの修正
シ ート メ ニュ ーの新規作成
ユーザ イ ベン ト を 発生さ せる メ ニュ ー スク リ プ ト の追加
> 新規メ ニ ュ ーのア タ ッ チと ア プ リ ケーシ ョ ン の実行
こ の ス テ ッ プでは、 新規シー ト メ ニ ューを ア タ ッ チ し て、 も う 一度ア
プ リ ケーシ ョ ン を実行 し ます。
1
シ ス テム ツ リ ーで w_master_detail_ancestor を ダブルク リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ のプ ロ パテ ィ ビ ュ ーの [ メ ニ ュー名] ボ ッ ク
ス に リ ス ト さ れてい る メ ニ ュ ーは ま だ m_pbtutor_sheet です。
プ ロパテ ィ ビ ュ ーが表示 さ れていない場合
メ ニ ュ ー バーの [ビ ュ ー|プ ロ パテ ィ ] を選択 し ます。
2
プ ロパテ ィ ビ ュ ーの [ メ ニ ュ ー名] ボ ッ ク スの隣の参照 ([...]) ボ タ ン を
ク リ ッ ク し ます。
オブジ ェ ク ト 選択ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
3
[ メ ニ ュ ー] リ ス ト ボ ッ ク ス で 「m_my_sheet」 を 選択 し て [OK] を ク
リ ッ ク し ます。
こ れは m_pbtutor_sheet か ら 継承 し た後で変更 し たシー ト メ ニ ュ ー
です。こ れでプ ロ パテ ィ ビ ュ ーで メ ニ ュ ー と し て リ ス ト さ れます。
4
ペ イ ン タ バー 1 の [保存] ボ タ ン を ク リ ッ ク し ます。
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
アプ リ ケーシ ョ ン ロ グ イ ン ウ ィ ン ド ウ が表示 さ れ ます。
5
[ユーザ ID] ボ ッ ク スに 「dba」 と 入力 し ます。
[パスワー ド ] ボ ッ ク スに 「sql」 と 入力 し て、 [OK] ボ タ ン を ク リ ッ ク
し ます。
デー タ ベー ス と の接続が確立 さ れ、 ア プ リ ケーシ ョ ン の MDI フ
レ ー ム が開 き ま す。 [フ ァ イ ル] メ ニ ュ ー に は、 [新規作成] メ
ニ ュ ー項目のかわ り に [レ ポー ト ] カ ス ケー ド メ ニ ュ ーが表示 さ
れ ます。 [開 く ] メ ニ ュ ー項目は表示 さ れな く な っ てい ます。
158
PowerBuilder
レ ッ スン 6
6
メ ニ ュ ーの設定
メ ニ ュ ー バーの [フ ァ イル|レポー ト |顧客情報] を選択 し ます。
2 番目の ツールバーが表示 さ れ、 [編集] お よ び [ ウ ィ ン ド ウ ] カ
ス ケー ド メ ニ ュ ーに使用可能な メ ニ ュー項目が表示 さ れてい る こ
と に注意 し て く だ さ い。
7
[編集] メ ニ ュ ーを選択 し ます。
[編集] メ ニ ュ ーには、 追加 し た [挿入] 、 [更新] 、 [削除] オプ
シ ョ ン があ り ます。 顧客情報 ウ ィ ン ド ウ のデー タ ウ ィ ン ド ウ コ ン
ト ロ ールにはデー タ ウ ィ ン ド ウ オブジ ェ ク ト が関連付け ら れてい
ないので、 こ れ ら のオプシ ョ ンは ま だ機能 し ません。
8
[ウ ィ ン ド ウ] メ ニ ュ ーを選択 し ます。
開いたシー ト に対応す る 新規 メ ニ ュ ー項目が追加 さ れてい ます。
9
メ ニ ュ ー バーの [フ ァ イル|レポー ト |商品情報] を選択 し ます。
2 番目の MDI シー ト が開 き ます。 こ のシー ト は 1 番目のシー ト に
重な る よ う に し て表示 さ れます。 メ ニ ュ ー バーは変更 さ れません。
こ れは m_my_sheet が w_customers と w_products の両方の メ ニ ュ ー
であ る ためです。
10 [編集] メ ニ ュ ーを選択 し ます。
w_products ウ ィ ン ド ウ は m_my_sheet メ ニ ュ ーを使用す る ので、 商
品管理 ウ ィ ン ド ウ が開いてい る と き に [挿入] 、 [更新] 、 [削除]
オプシ ョ ン も 利用で き ます。
11 [ウ ィ ン ド ウ] メ ニ ュ ーを選択 し ます。
開いた 2 番目のシー ト に対応す る メ ニ ュ ー項目が追加 さ れてい ま
す。 こ の メ ニ ュ ー項目の隣にチ ェ ッ ク マー ク が表示 さ れ、ア ク テ ィ
ブなシー ト であ る こ と が示 さ れ ます。
12
メ ニ ュ ー バーの [フ ァ イル|終了] を選択 し ます。
アプ リ ケーシ ョ ン が終了 し 、 ウ ィ ン ド ウ ペ イ ン タ の ワ ー ク スペー
ス に戻 り ます。
13 ウ ィ ン ド ウ ペ イ ン タ を閉 じ ます。
PowerBuilder 入門
159
新規 メ ニ ュ ーのア タ ッ チ と ア プ リ ケーシ ョ ンの実行
160
PowerBuilder
レ ッ ス ン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の
作成
デー タ ウ ィ ン ド ウ オブジ ェ ク ト は、 PowerBuilder の も っ と も 強力
で有用な機能の 1 つです。デー タ ウ ィ ン ド ウ オブジ ェ ク ト は、デー
タ ベー ス と 接続 し てデー タ を 読み込み、 さ ま ざ ま な提示様式で
デー タ を表示 し ます。 ま た、 デー タ ベー ス を更新す る こ と も で き
ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
データ ウ ィ ン ド ウ オブジェ ク ト の新規作成と プレ ビ ュ ー
•
1 つめのデータ ウ ィ ン ド ウ オブジ ェ ク ト の表示の変更
•
2 つめのデータ ウ ィ ン ド ウ オブジ ェ ク ト の作成
•
2 つめのデータ ウ ィ ン ド ウ オブジ ェ ク ト の表示の変更
所要時間
約 20 分
PowerBuilder 入門
161
About this lesson
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の新規作成 と プ レ ビ ュ ー
現在の学習個所
> データ ウィ ン ド ウ オブ ジ ェ ク ト の新規作成と プ レ ビ ュ ー
データ ウィ ン ド ウ オブ ジ ェ ク ト の保存
1 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の作成
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
こ の ス テ ッ プでは、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト を新規作成 し て、
デー タ ウ ィ ン ド ウ ペ イ ン タ に表示 し ま す。 ほかのペ イ ン タ と 同様に、
デー タ ウ ィ ン ド ウ ペ イ ン タ には、 同時に開 く こ と がで き る さ ま ざ ま な
ビ ューがあ り ます。
デー タ ウ ィ ン ド ウ ペ イ ン タ のデザイ ン ビ ュ ーについて
デー タ ウ ィ ン ド ウ ペ イ ン タ のデザ イ ン ビ ュ ーは、ほかのペ イ ン タ の レ
イ ア ウ ト ビ ュー と 似てい ます。 一度に表示で き る デザ イ ン ビ ューは 1
つだけです。
デザ イ ン ビ ュ ーは、 ヘ ッ ダ、 詳細、 サ マ リ 、 お よ び フ ッ タ の 4 つの
「区域」 と 呼ばれ る 領域に分かれてい ます。 こ れ ら の区域の内容は変更
す る こ と がで き ます。 た と えば、 サ イ ズの変更や、 オブジ ェ ク ト ( コ
ン ト ロ ール、 テ キ ス ト 、 線、 ボ ッ ク ス、 楕円) の追加、 色やフ ォ ン ト
の変更を行 う こ と がで き ます。
デー タ ウ ィ ン ド ウ ペ イ ン タ のプ レ ビ ュ ー ビ ュ ーでは、実行時におけ る
ア プ リ ケーシ ョ ン でのオブ ジ ェ ク ト の表示を テーブル デー タ が挿入
さ れた状態で見 る こ と がで き ます。
1
パワーバーの [新規作成] ボ タ ン を ク リ ッ ク し ます。
新規作成 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
2
[デー タ ウ ィ ン ド ウ] タ ブ を ク リ ッ ク し ます。
提示様式の リ ス ト で 「 タ ブ ラ」 を選択 し て [OK] を ク リ ッ ク し ます。
デー タ ウ ィ ン ド ウ ウ ィ ザー ド の タ ブ ラ デー タ ウ ィ ン ド ウ のた め
のデー タ ソ ース の選択ページが表示 さ れます。
3
162
デー タ ソ ース と し て 「Quick Select」 を選択 し ます。
[プ レ ビ ュ ー時に検索する] チ ェ ッ ク ボ ッ ク ス を オンに し ます。
[次へ] を ク リ ッ ク し ます。
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
EAS Demo DB デー タ ベース に接続 し 、Quick Select ダ イ ア ロ グ ボ ッ
ク ス が表示 さ れます。
4
[テーブル] リ ス ト ボ ッ ク スで 「customer (顧客情報テーブル)」 を ク リ ッ
ク し ます。
テーブルが開 き 、 カ ラ ム が一覧表示 さ れ ま す。 こ のデー タ ウ ィ ン
ド ウ では 4 つのカ ラ ム を選択 し ます。
5
[カ ラ ム] リ ス ト ボ ッ ク スで 「id」 、 「lname」 、 「fname」 を、 並んでいる
順に ク リ ッ ク し ます。
リ ス ト を ス ク ロール し て 「company_name」 を ク リ ッ ク し ます。
Quick Select ダ イ ア ロ グ ボ ッ ク ス の下のグ リ ッ ド に、 選択 し た カ ラ
ム が表示 さ れます。
選択する順序で表示 さ れる順序が決ま り ます
各カ ラ ム は、 選択 し た順に、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト 内で
左か ら 右へ表示 さ れます。誤っ て カ ラ ム を ク リ ッ ク し た場合は、 も
う 一度 ク リ ッ ク す る と 選択を取 り 消す こ と がで き ます。
PowerBuilder 入門
163
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の新規作成 と プ レ ビ ュ ー
ダ イ ア ロ グ ボ ッ ク ス の下のグ リ ッ ド 領域を使用 し て、 ソ ー ト 条件
(SQL ORDER BY 句の場合) や選択条件 (SQL WHERE 句の場合)
を指定で き ま す。 こ こ では ソ ー ト 条件だけ を指定 し ま す。 id カ ラ
ム を昇順に ソ ー ト し ます。
6
Quick Select ダ イ ア ログボ ッ ク スのグ リ ッ ド 領域で、[ソ ー ト ] の横、[Id]
の下のセルを ク リ ッ ク し ます。
ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス が表示 さ れます。
7
2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「昇順」 を選択 し ます。
こ れで id カ ラ ム を昇順で ソ ー ト す る よ う に指定 さ れます。
8
[OK] を ク リ ッ ク し ます。
デー タ ウ ィ ン ド ウ ウ ィ ザー ド か ら 、 新規デー タ ウ ィ ン ド ウ オブ
ジ ェ ク ト の色 と 境界を選択す る よ う に求め ら れ ま す。 デフ ォ ル ト
では、 テ キ ス ト ま たはカ ラ ム の境界はあ り ません。
9
[次へ] を ク リ ッ ク し ます。
境界 と 色のデ フ ォ ル ト 設定値 を 使用 し ま す。 デー タ ウ ィ ン ド ウ
ウ ィ ザー ド に よ り 、 選択 し た値が集約 さ れます。
10 [完了] ボ タ ン を ク リ ッ ク し ます。
新規デー タ ウ ィ ン ド ウ オブジ ェ ク ト が作成 さ れ、 デー タ ウ ィ ン ド
ウ ペ イ ン タ が開 き ます。
デザ イ ン ビ ュ ーに、 デ フ ォ ル ト のヘ ッ ダが付いたヘ ッ ダ区域 と 、
選択 し た カ ラ ム のあ る 詳細区域がそれぞれ表示 さ れます。
164
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
プ レ ビ ュ ー ビ ュ ーでは、 実行時に表示 さ れ る も の と 同 じ デー タ
ウ ィ ン ド ウ が表示 さ れ ま す。 すべての顧客のデー タ が表示 さ れ ま
す。 デー タ は、 指定 し た と お り 、 顧客 ID で昇順に ソ ー ト さ れます。
プ レ ビ ュ ー ビ ュ ーの表示
プ レ ビ ュ ー ビ ューが表示 さ れていない場合は、 メ ニ ュ ー バーか ら
[ビ ュ ー|プ レ ビ ュ ー] を選択 し ま す。 [プ レ ビ ュ ー] がグ レ ー表
示の場合は、 すでに表示 さ れてい る ので選択で き ま せん。 一度に
表示で き る プ レ ビ ュー ビ ュ ーは 1 つだけです。
PowerBuilder 入門
165
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の保存
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の保存
現在の学習個所
データ ウィ ン ド ウ オブ ジ ェ ク ト の新規作成と プ レ ビ ュ ー
> データ ウィ ン ド ウ オブ ジ ェ ク ト の保存
1 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の作成
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
こ の ス テ ッ プでは、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト に名前を付け て、
pbtutor.pbl ラ イ ブ ラ リ に保存 し ます。
別のラ イ ブ ラ リ への保存
オブ ジ ェ ク ト は別の ア プ リ ケーシ ョ ン ラ イ ブ ラ リ に保存す る こ と が
で き ますが、 複雑にな ら ない よ う にす る ために、 新規チ ュ ー ト リ アル
オブジ ェ ク ト はすべて同一の ラ イ ブ ラ リ に保存 し ます。 ま た、 ラ イ ブ
ラ リ ペ イ ン タ を使用す る と 、 ラ イ ブ ラ リ 間でオブジ ェ ク ト を コ ピー し
た り 、 移動 し た り す る こ と も で き ます。
1
メ ニ ュ ー バーか ら [フ ァ イル|上書き保存] を選択 し ます。
デー タ ウ ィ ン ド ウ の保存 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ、[デー タ
ウ ィ ン ド ウ ] ボ ッ ク ス に挿入ポ イ ン ト が示 さ れます。
2
[ア プ リ ケーシ ョ ン ラ イ ブ ラ リ ] ボ ッ ク ス で 「pbtutor.pbl」 が選択 さ れて
いる こ と を確認 し ます。
[デー タ ウ ィ ン ド ウ] ボ ッ ク スに 「d_custlist 」 と 入力 し ます。
こ れで、 デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト に名前が付け ら れ ま す。
「d_」 はデー タ ウ ィ ン ド ウ オブジ ェ ク ト の標準の接頭辞です。
3
(オプ シ ョ ン) [ コ メ ン ト ] ボ ッ ク スに以下のコ メ ン ト を入力 し ます。
こ のデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト は顧客名 と その会社名を検索 し
ます。
4
[OK] を ク リ ッ ク し ます。
デー タ ウ ィ ン ド ウ オブジ ェ ク ト が保存 さ れ、 デー タ ウ ィ ン ド ウ の
保存 ダ イ ア ロ グ ボ ッ ク ス が閉 じ ます。
166
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
1 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更
現在の学習個所
データ ウィ ン ド ウ オブ ジ ェ ク ト の新規作成と プ レ ビ ュ ー
データ ウィ ン ド ウ オブ ジ ェ ク ト の保存
> 1 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の作成
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
こ こ では、 デー タ ウ ィ ン ド ウ の表示を変更 し ます。 カ ラ ム と カ ラ ム見
出 し を移動 し て、 現在選択 さ れてい る 行の左にハン ド ポ イ ン タ を表示
す る ス ペース を作 り ま す。 ま た、 一部のカ ラ ム を移動 し て見出 し と 揃
う よ う に し ます。
こ れ ら の変更作業はデザ イ ン ビ ュ ーで行い ま す。 同時にプ レ ビ ュ ー
ビ ュ ーを開いておけば、 変更 し た結果、 実行時にデー タ ウ ィ ン ド ウ が
ど の よ う に表示 さ れ る か を確認で き ます。
1
メ ニ ュ ー バーの [編集|選択|すべて選択] を選択 し ます。
または
〔Ctrl〕 + 〔A〕 を押 し ます。
デー タ ウ ィ ン ド ウ オブジ ェ ク ト 内のすべての コ ン ト ロ ールがデザ
イ ン ビ ューで選択 さ れます。
2
選択 し たオブ ジ ェ ク ト の 1 つにマウス ポ イ ン タ を移動 し ます。
右に 4 cm ほど、 オブ ジ ェ ク ト を ド ラ ッ グ し ます。
選択 さ れてい る すべてのオブジ ェ ク ト がい っ し ょ に移動 し ます。
3
デザイ ン ビ ュ ーで、 空白の領域を ク リ ッ ク し ます。
オブジ ェ ク ト の選択が解除 さ れます。
4
ヘ ッ ダ区域の上の [顧客 ID] ヘ ッ ダ を ク リ ッ ク し ます。
〔Ctrl〕 を押 し たま ま [id] カ ラムを ク リ ッ ク し ます。
左に 2.5 cm ほど [id] カ ラ ムを ド ラ ッ グ し ます。
カ ラ ム と そのヘ ッ ダがいっ し ょ に移動 し ます。
PowerBuilder 入門
167
1 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更
5
ス タ イルバーの [中央揃え] ボ タ ン を ク リ ッ ク し ます。
デザイ ン ビ ュ ーで、 空白の領域を ク リ ッ ク し ます。
カ ラ ム ヘ ッ ダ の テ キ ス ト と カ ラ ム デー タ の中央揃え を行 っ てか
ら 、 オブジ ェ ク ト の選択を解除 し ます。
6
[姓] ヘ ッ ダ を ク リ ッ ク し ます。
〔Ctrl〕 を押 し たま ま [名] および [会社名] ヘ ッ ダ を ク リ ッ ク し ます。
ス タ イルバーの [左寄せ] ボ タ ン を ク リ ッ ク し ます。
操作を完了す る と 、 デザ イ ン ビ ュ ーは次の図の よ う にな る はずで
す。
7
メ ニ ュ ー バーか ら [フ ァ イル|閉 じ る] を選択 し ます。
変更内容を保存す る か ど う か を確認す る メ ッ セージ ボ ッ ク ス が表
示 さ れます。
8
[はい] を ク リ ッ ク し ます。
デー タ ウ ィ ン ド ウ オブジ ェ ク ト が保存 さ れ、 デー タ ウ ィ ン ド ウ ペ
イ ン タ が閉 じ ます。
168
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
現在の学習個所
データ ウィ ン ド ウ オブ ジ ェ ク ト の新規作成と プ レ ビ ュ ー
データ ウィ ン ド ウ オブ ジ ェ ク ト の保存
1 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
> 2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の作成
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
1 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト を作成 し た と き には、 Quick
Select を使用 し て テーブル と カ ラ ム を指定 し ま し た。 Quick Select を使
用す る と 、 Select ペ イ ン タ を使用 し ないですべての顧客を検索で き ま
す。
2 つめのデー タ ウ ィ ン ド ウ オブジ ェ ク ト の作成では、 Select ペ イ ン タ
を使用 し ます。 実行時に引数をデー タ ウ ィ ン ド ウ オブジ ェ ク ト に渡す
ために、 検索引数 と WHERE 条件を定義す る必要があ り ます。 こ こ で
は、 顧客 ID を渡 し ます。
こ こ では以下の内容について学習 し ます。
•
データ ソ ース およ びス タ イ ルの選択
•
テ ーブルと カ ラ ム の選択
•
検索引数の定義
•
WHERE 句の指定
•
データ ウ ィ ン ド ウ ペイ ン タ でのデータ ウ ィ ン ド ウ の表示
•
データ ウ ィ ン ド ウ オブジ ェ ク ト の保存
デー タ ソ ースお よびス タ イルの選択
こ こ では、デー タ ソ ース を選択 し て、デー タ の表示方法を指定 し ます。
1
パワーバーの [新規作成] ボ タ ン を ク リ ッ ク し ます。
新規作成 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
2
PowerBuilder 入門
まだ選択 し ていない場合は、 [デー タ ウ ィ ン ド ウ] タ ブ を ク リ ッ ク し ます。
提示様式の リ ス ト で 「フ リ ー フ ォ ーム」 を選択 し て [OK] を ク リ ッ ク し
ます。
169
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
3
デー タ ソ ース と し て [SQL Select] を選択 し ます。
[プ レ ビ ュ ー時に検索する] チ ェ ッ ク ボ ッ ク ス を オンに し ます。
[次へ] を ク リ ッ ク し ます。
デー タ ソ ース が [SQL Select] なので、 Select ペ イ ン タ に移動 し ま
す。 テーブルの選択 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
[プ レ ビ ュ ー時に検索す る ] チ ェ ッ ク ボ ッ ク ス を オ ンにす る と 、 開
発環境で ク エ リ に よ っ て返 さ れたデー タ を表示で き ま すが、 指定
す るすべての検索引数に初期値を与え る 必要があ り ます。
テーブル と カ ラ ムの選択
こ こ では、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト で使用す る テーブル と その
テーブル内のカ ラ ム を選択 し ます。
1
[テーブルの選択] リ ス ト で 「customer」 を選択 し て [開 く ] を ク リ ッ ク
し ます。
Select ペ イ ン タ に、customer テーブル と そのテーブルのカ ラ ム が表
示 さ れ ます。
別の方法
customer テーブル を 選択 し て [開 く ] を ク リ ッ ク す る かわ り に、
customer テーブル を ダブル ク リ ッ ク し た場合は、 テーブルの選択
ダ イ ア ロ グ ボ ッ ク ス は開いた ま ま にな り ま す。 こ の場合、 次の操
作に進むには [キ ャ ン セル] を ク リ ッ ク す る必要があ り ます。
2
テーブル レ イ アウ ト ビ ュ ーで、 customer テーブルのヘ ッ ダ領域を右 ク
リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [すべて選択] を ク リ ッ ク し ます。
テーブル レ イ ア ウ ト ビ ュ ーでテーブルの上の [選択 リ ス ト ] 領域
にカ ラ ム名が表示 さ れます。
[選択 リ ス ト ] 内でのカ ラ ム の順序は、 カ ラ ム を選択 し た順序にな
り ま す。 一度にすべての カ ラ ム を選択 し た場合は、 デー タ ベー ス
内でのカ ラ ム の元の順序で表示 さ れ ま す。 カ ラ ム の表示順序は後
で変更 し ます。
170
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
Syntax ビ ュ ーでは、 選択の順序を確認す る こ と も で き ます。 Syntax
ビ ュ ーを表示す る には、 タ ブ ウ ィ ン ド ウ の一番下にあ る [Syntax]
タ ブ を ク リ ッ ク し ま す。 Syntax ビ ュ ーに、 生成 さ れた Select 文が
表示 さ れます。
検索引数の定義
こ こ では、 検索引数を定義 し ます。
1
メ ニ ュ ー バーの [デザイ ン|検索引数] を選択 し ます。
検索引数の指定 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
2
[名前] ボ ッ ク スに 「cust_id」 と 入力 し ます。
デフ ォ ル ト のデー タ 型は 「Number」 で、 こ れを使用 し ます。
PowerBuilder 入門
171
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
検索引数名について
使用す る 検索引数には ど の よ う な名前 を 付け て も か ま い ま せん。
こ れは、 実行時に渡す値のプ レース ホルダにすぎ ません。 ただ し 、
意味のあ る名前を使用す る よ う に し たほ う が よ いで し ょ う 。
3
[OK] を ク リ ッ ク し ます。
検索引数が定義 さ れます。
WHERE 句の指定
こ こ では、 特定の顧客を検索す る ために検索引数を使用 し て WHERE
句を指定 し ます。
1
[Where] タ ブ を ク リ ッ ク し ます。
Where ビ ュ ーが表示 さ れます。
2
Where ビ ュ ーで、 [カ ラ ム名] の下のボ ッ ク ス を ク リ ッ ク し ます。
下矢印が表示 さ れ、 ボ ッ ク ス が ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス に
な り ます。
3
下矢印を ク リ ッ ク し ます。
「"customer"."id"」 を選択 し ます。
カ ラ ム見出 し のすぐ 下に 「"customer"."id"」 が表示 さ れます。 [演算
子] ボ ッ ク ス に等号 (=) が表示 さ れます。 こ の演算子は正 し いの
で、 変更の必要はあ り ません。
4
172
Where ビ ュ ーで、[値] のカ ラ ム ヘ ッ ダの下のボ ッ ク ス を右 ク リ ッ ク し ま
す。
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
ポ ッ プ ア ッ プ メ ニ ュ ーから [引数] を選択 し 、 「:cust_id」 を選択 し て、
[貼 り 付け] を ク リ ッ ク し ます。
5
[Syntax] タ ブ を ク リ ッ ク し ます。
Syntax ビ ュ ーに、 修正 し た SELECT 文が表示 さ れ ます。
6
ス ク ロール し て、 生成 さ れた WHERE 句を表示 し ます。
こ れで、 完全な SQL SELECT 文が作成 さ れ ま し た。 こ の文は、 実
行時に指定 さ れ る 引数に等 し い id カ ラ ム があ る顧客情報テーブル
の複数のカ ラ ム か ら デー タ を検索 し ます。
デー タ ウ ィ ン ド ウ ペ イ ン タ でのデー タ ウ ィ ン ド ウの表示
こ こ では、デザ イ ン ビ ュ ー と プ レ ビ ュ ー ビ ューを使用 し てデー タ ウ ィ
ン ド ウ ペ イ ン タ でデー タ ウ ィ ン ド ウ を表示 し ます。
1
ペ イ ン タ バーの [ペ イ ン タ に戻る] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [ フ ァ イル|デー タ ウ ィ ン ド ウ ペ イ ン タ に戻 り ます] を
選択 し ます。
デー タ ウ ィ ン ド ウ ウ ィ ザー ド に よ り 、 新規デー タ ウ ィ ン ド ウ オブ
ジ ェ ク ト の枠線 と 色を選択す る よ う に求め ら れます。
2
カ ラ ムの [枠線] ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「3D 凸表示」 を選択
し ます。
[次へ] を ク リ ッ ク し ます。
カ ラ ム には盛 り 上が っ た枠線が付 き ま すが、 デー タ ウ ィ ン ド ウ オ
ブジ ェ ク ト の ラ ベルには付 き ません。 デー タ ウ ィ ン ド ウ ウ ィ ザー
ド に よ り 、 選択 し た値が集約 さ れ ます。
PowerBuilder 入門
173
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
3
[完了] ボ タ ン を ク リ ッ ク し ます。
[プ レ ビ ュ ー時に検索す る ] チ ェ ッ ク ボ ッ ク ス を オ ン に し てお り 、
デー タ ウ ィ ン ド ウ ペ イ ン タ のデ フ ォ ル ト の レ イ ア ウ ト に プ レ
ビ ュ ーが含ま れてい る ため、 検索引数の指定 ダ イ ア ロ グ ボ ッ ク ス
が表示 さ れます。
こ のダ イ ア ロ グ ボ ッ ク ス では、 引数値の入力が求め ら れ ま す。 こ
のデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト を チ ュ ー ト リ アル ア プ リ ケー
シ ョ ン に入れ る と 、 必要な引数をデー タ ウ ィ ン ド ウ オブジ ェ ク ト
に渡すス ク リ プ ト が自動的に記述 さ れます。
4
174
[値] フ ィ ール ド に顧客 ID (101、 102、 103 な ど) を入力 し ます。
[OK] を ク リ ッ ク し ます。
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
デー タ ウ ィ ン ド ウ ペ イ ン タ が開 き ます。 デザ イ ン ビ ューに新 し い
デー タ ウ ィ ン ド ウ オブジ ェ ク ト が表示 さ れ ます。
フ ォ ン ト サイズの変更
ラ ベルの文字がすべて見え ない場合は、〔Ctrl〕 + 〔A〕 を押 し てデー
タ ウ ィ ン ド ウ 内のすべての項目を選択 し てか ら 、 ス タ イ ルバーで
小 さ い フ ォ ン ト サ イ ズ を選択 し ます。
PowerBuilder 入門
175
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
要求 さ れた顧客デー タ がデー タ ウ ィ ン ド ウ プ レ ビ ュ ー ビ ュ ーで
検索 さ れ ます。
ほかのレ コ ー ド の検索
ほかの顧客の レ コ ー ド を プ レ ビ ュ ーす る 場合は、 デー タ ウ ィ ン ド
ウ プ レ ビ ュ ー ビ ュ ーを右 ク リ ッ ク し て、ポ ッ プア ッ プ メ ニ ュ ーの
[デー タ 検索] を選択 し 、 検索引数の指定 ダ イ ア ロ グ ボ ッ ク ス で別
の顧客 ID を指定 し ます。
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の保存
こ こ ではデー タ ウ ィ ン ド ウ オブジ ェ ク ト に名前を付け て保存 し ます。
ペ イ ン タ を終了す る ま で保存 し ないでお く こ と も で き ますが、 頻繁に
作業内容を保存す る よ う にす る のが適切です。
1
メ ニ ュ ー バーか ら [フ ァ イル|上書き保存] を選択 し ます。
デー タ ウ ィ ン ド ウ の保存 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
2
[ア プ リ ケーシ ョ ン ラ イ ブ ラ リ ] ボ ッ ク ス で 「pbtutor.pbl」 が選択 さ れて
いる こ と を確認 し ます。
[デー タ ウ ィ ン ド ウ] ボ ッ ク スに 「d_customer」 と 入力 し ます。
以前は、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト を d_custlist と い う 名前で
保存 し ま し た。
176
PowerBuilder
レ ッ スン 7
3
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
(オプ シ ョ ン) [コ メ ン ト ] ボ ッ ク スに以下の コ メ ン ト を入力 し ます。
このデー タ ウ ィ ン ド ウは、 顧客情報テーブルのすべてのカ ラムを検
索 し ます。 詳細デー タ ウ ィ ン ド ウ と し て使 う と 便利です。
4
[OK] を ク リ ッ ク し ます。
デー タ ウ ィ ン ド ウ ペ イ ン タ に戻 り ます。
PowerBuilder 入門
177
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更
現在の学習個所
データ ウィ ン ド ウ オブ ジ ェ ク ト の新規作成と プ レ ビ ュ ー
データ ウィ ン ド ウ オブ ジ ェ ク ト の保存
1 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の作成
> 2 つめのデータ ウィ ン ド ウ オブ ジ ェ ク ト の表示の変更
こ こ では、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト を修正 し ます。 こ の レ ッ ス
ン では、 以下の項目について学習 し ます。
•
カ ラ ム と ラ ベルの再配置
•
ラ ベルと カ ラ ム の整列
•
ド ロ ッ プダウ ン データ ウ ィ ン ド ウ 編集ス タ イ ルの矢印の表示
フ リ ー フ ォ ーム デー タ ウ ィ ン ド ウのカ ラム
フ リ ーフ ォ ーム デー タ ウ ィ ン ド ウ オブジ ェ ク ト のデー タ フ ィ ール ド
は、 テーブル形式ではあ り ませんが、 カ ラ ム と 呼ばれます。
カ ラ ム と ラ ベルの再配置
こ こ では、 新規デー タ ウ ィ ン ド ウ オブジ ェ ク ト のカ ラ ム と ラ ベルを再
配置 し ます。 デザ イ ン ビ ュ ーを最大化す る と 、 カ ラ ム と ラ ベルを非常
に操作 し やす く な り ます。
1
デザイ ン ビ ュ ーで 「郵便番号」 ラ ベルを ク リ ッ ク し ます。
〔Ctrl〕 を押 し たま ま、 zip カ ラ ムを ク リ ッ ク し ます。
2 つの項目が選択 さ れます。
2
178
〔Ctrl〕 を 押し たまま、以下のカ ラ ム ラ ベルと カ ラ ム コ ン ト ロ ールを ク リ ッ
ク し ます。
ラ ベル
郵便番号 :
カ ラム
zip
都道府県 :
市区 :
state
city
町村番地 :
address
PowerBuilder
レ ッ スン 7
3
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
〔Ctrl〕 を放 し ます。
選択 さ れている オブ ジ ェ ク ト の 1 つに カ ー ソ ルを置き、デー タ ウ ィ ン ド ウ
オブ ジ ェ ク ト の右上隅に ド ラ ッ グ し ます。
すべてのオブジ ェ ク ト がいっ し ょ に移動 し ます。
4
この 〔Ctrl〕 を押 し た ま ま ク リ ッ ク する方法を使用 し て、 以下のラ ベルお
よび カ ラ ム コ ン ト ロールを示 さ れた位置に移動 し ます。
ラ ベル
[会社名]
[電話番号]
カ ラ ム コ ン ト ロール
company_name
phone
移動先
[Fname Yomi:] の下
[会社名] の下
必要で あれば、 ス ク ロ ール し てデー タ ウ ィ ン ド ウ 内にすべての カ
ラ ム が表示 さ れ る よ う に し ます。
5
詳細区域を最後のカ ラ ム ラ ベルの下へ ド ラ ッ グ し ます。
詳細区域に余分な スペース があれば削除 し ます。
フ ィ ール ド ど う し が重な る場合があ り ます。その場合の修正は、次
の練習で行い ます。 デザ イ ン ビ ュ ーでは、 デー タ ウ ィ ン ド ウ が次
の よ う に表示 さ れ る はずです。
デー タ ウ ィ ン ド ウ プ レ ビ ュ ー ビ ュ ーは、 次の よ う にな り ます。
PowerBuilder 入門
179
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更
ラ ベル と カ ラ ムの整列
こ こ では、 新規デー タ ウ ィ ン ド ウ で ラ ベル と カ ラ ム を整列 し ます。
1
デザイ ン ビ ュ ーで [町村番地] ラ ベルを選択 し ます。
[町村番地] ラ ベル を lname_yomi カ ラ ムので き る だけ近 く に移動 し ま
す。
ラ ベル ボ ッ ク ス の左端 と カ ラ ム ボ ッ ク ス の右端に小 さ な ス ペー
ス が残 る く ら いに間を詰め ます。
2
[町村番地] ラ ベルが選択 さ れている状態で、 〔Ctrl〕 + ク リ ッ ク を使用 し
て [郵便番号]、 [都道府県]、 および [市区] ラ ベルを選択 し ます。
3
メ ニ ュ ー バーの [書式|オブ ジ ェ ク ト の配置] を選択 し ます。
整列オプシ ョ ン のカ ス ケー ド メ ニ ュ ーが表示 さ れ ます。
4
1 つめのオプ シ ョ ン ([左端]) を選択 し ます。
選択 し たオブジ ェ ク ト の左端が、 選択 し た 1 つめの項目 ([町村番
地] ラ ベル) の左端に揃え ら れます。
ペ イ ン タ バーから の整列ツールの選択
ペ イ ン タ バー 2 の [配置] ボ タ ン を ク リ ッ ク す る と 、 整列ツール
の ド ロ ッ プダ ウ ン リ ス ト にア ク セ ス で き ます。
5
180
address のカ ラ ムを [町村番地] ラ ベルのす ぐ横に移動 し ます。
カ ラ ム ラ ベルの と き と 同 じ よ う に し て、zip、state、city カ ラムを address
カ ラ ムに揃え ます。
PowerBuilder
レ ッ スン 7
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の作成
ド ロ ッ プダウ ン デー タ ウ ィ ン ド ウ編集ス タ イルの矢印の表示
顧客の State カ ラ ム にはデー タ ウ ィ ン ド ウ 編集ス タ イ ルがあ り ます。 こ
れは EAS Demo DB デー タ ベース の State カ ラ ム に関連付け ら れてい る
拡張属性です。 State カ ラ ム が関連付け ら れてい る ( ド ロ ッ プダ ウ ン)
デー タ ウ ィ ン ド ウ には、 State と 2 文字の コ ー ド の リ ス ト があ り ます。
State の選択 リ ス ト が ア プ リ ケーシ ョ ン で常に表示 さ れ る よ う に し た
り 、 選択 リ ス ト が利用可能であ る こ と を示す矢印を常に表示 さ れ る よ
う に し た り す る こ と がで き ます。 こ こ では、 State カ ラ ム のプ ロ パテ ィ
を変更 し て、 矢印が常に表示 さ れ る よ う に し ます。
1
デザイ ン ビ ュ ーで State カ ラムを ク リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーが表示 さ れる こ と を確認 し ます。
こ のプ ロ パテ ィ ビ ュ ーにはカ ラ ム のプ ロ パテ ィ が表示 さ れます。
2
プ ロパテ ィ ビ ュ ーで [編集] タ ブ を ク リ ッ ク し ます。
[編集] タ ブが見え ない場合は、 プ ロ パテ ィ ビ ューの一番上近 く に
あ る 矢印キーを ク リ ッ ク し て く だ さ い。 [様式の種類] で 「 ド ロ ッ
プダ ウ ン デー タ ウ ィ ン ド ウ 」 が選択 さ れてい る こ と を確認 し ます。
3
[矢印を常時表示] チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。
デザイ ン ビ ュ ーの State カ ラ ムが、 矢印プ ラ ス 2 文字を表示で き る幅で
ある こ と を確認 し ます。
デザ イ ン ビ ュ ーお よ びプ レ ビ ュ ー ビ ュ ーで、State カ ラ ム の横に矢
印が表示 さ れます。
4
PowerBuilder 入門
ペ イ ン タ バー 1 の [保存] ボ タ ン を ク リ ッ ク し ます。
ペ イ ン タ バー 1 の [閉 じ る] ボ タ ン を ク リ ッ ク し ます。
181
2 つめのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の表示の変更
182
PowerBuilder
レ ッ ス ン 8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト の
アタ ッチ
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト を 作成 し て保存す る と 、 デー タ
ウ ィ ン ド ウ オブジ ェ ク ト を ウ ィ ン ド ウ で使用で き る よ う にな り ま
す。すでに d_custlist お よ び d_customer と い う デー タ ウ ィ ン ド ウ オ
ブジ ェ ク ト を作成 し ま し た。 こ こ では、 こ れ ら のデー タ ウ ィ ン ド
ウ オブジ ェ ク ト を、 w_customers ウ ィ ン ド ウ 内のデー タ ウ ィ ン ド
ウ コ ン ト ロ ールに関連付け ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
マス タ ー データ ウ ィ ン ド ウ コ ン ト ロ ールへのデータ ウ ィ ン
ド ウ オブジ ェ ク ト のア タ ッ チ
•
詳細データ ウ ィ ン ド ウ
コ ン ト ロ ールへのデータ ウ ィ ン ド ウ
オブジ ェ ク ト のア タ ッ チ
•
ア プリ ケ ーショ ン の実行
•
商品管理 ウ ィ ン ド ウ へのデータ ウ ィ ン ド ウ オブジェ ク ト の
アタ ッ チ
•
ア プリ ケ ーショ ン の再実行
所要時間
約 15 分
PowerBuilder 入門
183
マ ス タ ー デー タ ウ ィ ン ド ウ コ ン ト ロールへのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
マス タ ー デー タ ウ ィ ン ド ウ コ ン ト ロールへのデー タ ウ ィ
ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
現在の学習個所
> マ スタ ー データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ
ク ト のア タ ッ チ
詳細データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ ク ト
のア タ ッ チ
ア プ リ ケーシ ョ ン の実行
商品管理 ウィ ン ド ウへのデータ ウィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
ア プ リ ケーシ ョ ン の再実行
こ の ス テ ッ プ で は、 デー タ ウ ィ ン ド ウ オ ブ ジ ェ ク ト を w_customers
ウ ィ ン ド ウ 上のデー タ ウ ィ ン ド ウ コ ン ト ロ ールにア タ ッ チ し ます。
1
184
シ ス テム ツ リ ーで pbtutor.pbl ツ リ ー項目を展開 し ます。
PowerBuilder
レ ッ スン 8
2
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
w_customers を右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから [編集] を
選択 し ます。
または
シ ス テム ツ リ ーで w_customers を ダ ブル ク リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ に w_customers ウ ィ ン ド ウ が表示 さ れます。
3
レ イ アウ ト ビ ュ ーで dw_master デー タ ウ ィ ン ド ウ コ ン ト ロールを右ク
リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を ク リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーで [デー タ オブ ジ ェ ク ト ] ボ ッ ク スの隣の参照 ([...])
ボ タ ン を ク リ ッ ク し ます。
オブジ ェ ク ト 選択ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
4
[デー タ ウ ィ ン ド ウ] リ ス ト ボ ッ ク ス で 「d_custlist」 を選択 し て [OK]
を ク リ ッ ク し ます。
d_custlist デー タ ウ ィ ン ド ウ オブジ ェ ク ト と dw_master デー タ ウ ィ
ン ド ウ コ ン ト ロ ールが関連付け ら れます。
レ イ ア ウ ト ビ ューで、 dw_master コ ン ト ロ ール内に d_custlist デー
タ ウ ィ ン ド ウ の見出 し が表示 さ れてい ま すが、 デー タ は ま だ表示
さ れてい ません。アプ リ ケーシ ョ ン を実行す る ま では、デー タ ウ ィ
ン ド ウ は SELECT 文を実行 し ません。
PowerBuilder 入門
185
マ ス タ ー デー タ ウ ィ ン ド ウ コ ン ト ロールへのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
ド ラ ッ グ ア ン ド ド ロ ッ プ を使用 し てのウ ィ ン ド ウへのデー タ ウ ィ ン ド ウ オ
ブ ジ ェ ク ト の追加
こ のチ ュ ー ト リ アルでは、 エ ラ ー処理が組み込まれた カ ス タ ム デー タ
ウ ィ ン ド ウ コ ン ト ロ ールを使用 し ます。標準的なデー タ ウ ィ ン ド ウ コ
ン ト ロ ールを使用 し たい場合は、 こ の レ ッ ス ン で行っ た よ う に ウ ィ ン
ド ウ に コ ン ト ロ ール を追加 し て か ら デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト
を ア タ ッ チす る 必要はあ り ません。 シ ス テ ム ツ リ ーでデー タ ウ ィ ン ド
ウ オブ ジ ェ ク ト を選択 し 、 レ イ ア ウ ト ビ ュ ー内の ウ ィ ン ド ウ 上に ド
ラ ッ グす る だけで済みます。 す る と 、 デー タ ウ ィ ン ド ウ コ ン ト ロ ール
が自動的に作成 さ れ ます。
186
PowerBuilder
レ ッ スン 8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
詳細デー タ ウ ィ ン ド ウ コ ン ト ロールへのデー タ ウ ィ ン ド ウ
オブ ジ ェ ク ト のア タ ッ チ
現在の学習個所
マス タ ー データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ
ク ト のア タ ッ チ
> 詳細データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ ク ト
のア タ ッ チ
ア プ リ ケーシ ョ ン の実行
商品管理 ウィ ン ド ウへのデータ ウィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
ア プ リ ケーシ ョ ン の再実行
こ の ス テ ッ プでは、 詳細デー タ ウ ィ ン ド ウ コ ン ト ロ ールへデー タ ウ ィ
ン ド ウ オブジ ェ ク ト を ア タ ッ チ し ます。 ウ ィ ン ド ウ ペ イ ン タ では、 ま
だ w_customers ウ ィ ン ド ウ が開いてい る はずです。
1
レ イ アウ ト ビ ュ ーで 「dw_detail」 コ ン ト ロールを選択 し ます。
プ ロパテ ィ ビ ュ ーで [デー タ オブ ジ ェ ク ト ] ボ ッ ク スの隣の参照 ([...])
ボ タ ン を ク リ ッ ク し ます。
オブ ジ ェ ク ト 選択 ダ イ ア ログボ ッ ク スで 「d_customer」 を選択 し て [OK]
を ク リ ッ ク し ます。
d_customer デー タ ウ ィ ン ド ウ オブジ ェ ク ト と dw_detail デー タ ウ ィ
ン ド ウ コ ン ト ロ ールが関連付け ら れます。 ウ ィ ン ド ウ ペ イ ン タ の
ワ ー ク スペース では、 dw_detail コ ン ト ロ ール内に d_customer デー
タ ウ ィ ン ド ウ オブジ ェ ク ト が表示 さ れ ます。
2
PowerBuilder 入門
レ イ アウ ト ビ ュ ーで、 デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト に追加 し たすべて
のカ ラ ムを表示で き る よ う に dw_detail コ ン ト ロールを拡大 し ます。
187
詳細デー タ ウ ィ ン ド ウ コ ン ト ロールへのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
必要であれば、 ウ ィ ン ド ウ も 拡大 し ま す。 dw_detail コ ン ト ロ ール
を拡大す る場合、 dw_master コ ン ト ロ ール も 同 じ 幅に し ます。
188
PowerBuilder
レ ッ スン 8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
ア プ リ ケーシ ョ ンの実行
現在の学習個所
マス タ ー データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ
ク ト のア タ ッ チ
詳細データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ ク ト
のア タ ッ チ
> ア プ リ ケーシ ョ ン の実行
商品管理 ウィ ン ド ウへのデータ ウィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
ア プ リ ケーシ ョ ン の再実行
こ の ス テ ッ プでは、 アプ リ ケーシ ョ ン を も う 一度実行 し て、 2 つめの
デー タ ウ ィ ン ド ウ の挿入、 更新、 お よ び削除機能を テ ス ト し ます。
1
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
変更内容を保存す る か ど う か を問い合わせ る メ ッ セージ ボ ッ ク ス
が表示 さ れます。
2
[はい] を ク リ ッ ク し ます。
アプ リ ケーシ ョ ン が実行 さ れ、 ロ グ イ ン ウ ィ ン ド ウ が表示 さ れま
す。
3
[ユーザ ID] ボ ッ ク スに 「dba」 と 入力 し ます。
[パスワー ド ] ボ ッ ク スに 「sql」 と 入力 し て、 [OK] ボ タ ン を ク リ ッ ク
し ます。
デー タ ベー ス と の接続が確立 さ れ、 ア プ リ ケ ーシ ョ ン の MDI フ
レームが開 き ます。
4
PowerBuilder 入門
メ ニ ュ ー バーから [フ ァ イル|レポー ト |顧客情報] を選択 し ます。
189
ア プ リ ケーシ ョ ンの実行
顧客情報 ウ ィ ン ド ウ が表示 さ れます。
上部のデー タ ウ ィ ン ド ウ コ ン ト ロ ール (dw_master) には Customer
テーブルか ら 検索 さ れたすべての行が表示 さ れ、 ハン ド ポ イ ン タ
はど の行が選択 さ れてい る か を示 し ます。
下部のデー タ ウ ィ ン ド ウ コ ン ト ロ ール (dw_detail) には、 選択 し
た顧客についての詳細情報が表示 さ れてい ます。
5
ツールバーの [挿入] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [編集|挿入] を選択 し ます。
こ れで dw_detail デー タ ウ ィ ン ド ウ が ク リ ア ( リ セ ッ ト ) さ れ、 新
し い行がデー タ ウ ィ ン ド ウ に追加 さ れ ます。 カー ソ ルが dw_detail
コ ン ト ロ ールの [顧客 ID] ボ ッ ク ス に置かれ ます。
6
190
詳細デー タ ウ ィ ン ド ウのボ ッ ク スに情報を入力 し て、新 し い顧客行を追加
し ます。
PowerBuilder
レ ッ スン 8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
新 し い顧客の情報の入力
[顧客 ID] の番号は一意でなければな り ません。 値が重複 し ない よ
う にす る ために、 新 し いデー タ ベース エ ン ト リ に 4 桁の値を使用
す る か、 マ ス タ ー デー タ ウ ィ ン ド ウ の顧客の リ ス ト を ス ク ロ ール
し て リ ス ト に表示 さ れていない ID 番号を選択 し ます。
電話番号 と 郵便番号では、 入力す る 情報を表示す る のにエデ ィ ッ
ト マ ス ク を使用 し ます。 こ れ ら のデー タ フ ィ ール ド には数値だけ
を入力す る 必要があ り ます。 顧客の都道府県を指定す る には、都道
府県の カ ラ ム の隣の矢印 を ク リ ッ ク し て ド ロ ッ プ ダ ウ ン リ ス ト
ボ ッ ク ス か ら エン ト リ を選択す る必要があ り ます。
デー タ ベース で NULL 値を使用で き る のは 「会社名」 フ ィ ール ド
だけです。 そのほかのすべての フ ィ ール ド では、 新 し い顧客の [更
新] ボ タ ン を ク リ ッ ク す る前に、 値を入力 し なければな り ません。
7
ツールバーの [更新] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [編集|更新] を選択 し ます。
こ れで ue_update イ ベン ト の ス ク リ プ ト で コ ーデ ィ ン グ さ れた と
お り に、 新 し い顧客のデー タ がデー タ ベー ス に送 ら れ、 確認 メ ッ
セージが表示 さ れます。
新 し い顧客は ま だ マ ス タ ー デー タ ウ ィ ン ド ウ に表示 さ れ ま せん
( こ の機能が含 ま れ る よ う に コ ー ド を追加す る こ と も で き ま す) 。
ただ し 、 w_customers シー ト のほかの イ ン ス タ ン ス を開 く と 、 新 し
い顧客のデー タ は、 マ ス タ ーお よ び詳細デー タ ウ ィ ン ド ウ コ ン ト
ロ ールの両方で表示 さ れ ます。
8
メ ッ セージ ボ ッ ク スで [OK] を ク リ ッ ク し ます。
マス タ ー デー タ ウ ィ ン ド ウで顧客を ク リ ッ ク し ます。
その顧客のデー タ が下のデー タ ウ ィ ン ド ウ に表示 さ れ ます。
9
詳細デー タ ウ ィ ン ド ウで顧客の住所を変更 し ます。
10 ツールバーの [更新] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [編集|更新] を選択 し ます。
こ れで、 変更 し た顧客デー タ がデー タ ベー ス に送 ら れ、 別の確認
メ ッ セージが表示 さ れます。
PowerBuilder 入門
191
ア プ リ ケーシ ョ ンの実行
11
メ ッ セージ ボ ッ ク スで [OK] を ク リ ッ ク し ます。
マス タ ー デー タ ウ ィ ン ド ウでほかの顧客を選択 し ます。
詳細デー タ ウ ィ ン ド ウ にその顧客のデー タ が表示 さ れます。
12 ツールバーの [削除] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [編集|削除] を選択 し ます。
デー タ ウ ィ ン ド ウ か ら はその顧客がただちに削除 さ れ ますが、 [編
集] メ ニ ュ ーの [更新] オプシ ョ ン を選択 し ない限 り 、 デー タ ベー
ス か ら は削除 さ れません。 その場合、 EAS Demo DB デー タ ベース
のほかのテーブルの行が削除 し よ う と し てい る 行を参照 し てい る
と 、 更新処理が失敗す る こ と があ り ます。
自分でデー タ ベース に追加 し た行はすべて削除で き ます。
13
メ ニ ュ ー バーか ら [フ ァ イル|終了] を選択 し ます。
アプ リ ケーシ ョ ンが終了 し 、 ウ ィ ン ド ウ ペ イ ン タ に戻 り ます。
14 ウ ィ ン ド ウ ペ イ ン タ を閉 じ ます。
192
PowerBuilder
レ ッ スン 8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
商品管理 ウ ィ ン ド ウへのデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト
のア タ ッ チ
現在の学習個所
マス タ ー データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ
ク ト のア タ ッ チ
詳細データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ ク ト
のア タ ッ チ
ア プ リ ケーシ ョ ン の実行
> 商品管理 ウィ ン ド ウへのデータ ウィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
ア プ リ ケーシ ョ ン の再実行
こ の ス テ ッ プでは、 w_products ウ ィ ン ド ウ に 2 つのデー タ ウ ィ ン ド ウ
オブジ ェ ク ト を追加 し ます。 こ れ ら のデー タ ウ ィ ン ド ウ オブジ ェ ク ト
は、 tutor_pb.pbl ラ イ ブ ラ リ に用意 さ れてい ます。
1
システム ツ リ ーの w_products を 右ク リ ッ ク し て、ポッ プアッ プ メ ニュ ー
か ら [編集] を選択 し ます。
または
シ ス テム ツ リ ーで w_products を ダブルク リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ に w_products ウ ィ ン ド ウ が表示 さ れます。
2
コ ン ト ロール リ ス ト ビ ュ ーで dw_master デー タ ウ ィ ン ド ウ コ ン ト ロー
ルを選択 し ます。
プ ロパテ ィ ビ ュ ーで [デー タ オブ ジ ェ ク ト ] ボ ッ ク スの隣の参照 ([...])
ボ タ ン を ク リ ッ ク し ます。
オブジ ェ ク ト 選択ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
3
[ア プ リ ケーシ ョ ン ラ イ ブ ラ リ ]ボ ッ ク スで「tutor_pb.pbl」を選択 し ます。
[デー タ ウ ィ ン ド ウ] ボ ッ ク ス で 「d_prodlist」 を 選択 し て [OK] を ク
リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ のプ ロ パテ ィ ビ ュ ーの [デー タ オブジ ェ ク
ト ] ボ ッ ク ス に、 d_prodlist が表示 さ れ ます。
PowerBuilder 入門
193
商品管理 ウ ィ ン ド ウへのデー タ ウ ィ ン ド ウ オ ブ ジ ェ ク ト のア タ ッ チ
d_prodlist デー タ ウ ィ ン ド ウ オブジ ェ ク ト と 、 w_products ウ ィ ン ド
ウ 内の dw_master デー タ ウ ィ ン ド ウ コ ン ト ロ ール と が関連付け ら
れます。 レ イ ア ウ ト ビ ューで、 デー タ ウ ィ ン ド ウ オブジ ェ ク ト の
見出 し が表示 さ れ ま す。 コ ン ト ロ ール ま たは ウ ィ ン ド ウ のサ イ ズ
変更が必要な場合 も あ り ます。
4
コ ン ト ロール リ ス ト ビ ュ ーで dw_detail デー タ ウ ィ ン ド ウ コ ン ト ロール
を ク リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーで [デー タ オブ ジ ェ ク ト ] ボ ッ ク スの隣の参照 ([...])
ボ タ ン を ク リ ッ ク し ます。
オブジ ェ ク ト 選択ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
5
[ア プ リ ケーシ ョ ン ラ イ ブ ラ リ ]ボ ッ ク スで「tutor_pb.pbl」を選択 し ます。
[デー タ ウ ィ ン ド ウ] リ ス ト ボ ッ ク ス で 「d_product」 を選択 し て [OK]
を ク リ ッ ク し ます。
ウ ィ ン ド ウ ペ イ ン タ に戻 り ます。
d_product デー タ ウ ィ ン ド ウ オブジ ェ ク ト と dw_detail デー タ ウ ィ
ン ド ウ コ ン ト ロ ールが関連付け ら れ ま す。 レ イ ア ウ ト ビ ュ ーで
は、 dw_detail コ ン ト ロ ール内に d_product デー タ ウ ィ ン ド ウ オブ
ジ ェ ク ト が表示 さ れ ます。 d_product デー タ ウ ィ ン ド ウ オブジ ェ ク
ト には、 「商品 ID」、 「商品名」、 「商品内容」、 「サ イ ズ」、 「色」、 「在
庫数」、 お よ び 「単価」 と い う ラ ベルの付いた 7 つのカ ラ ム があ り
ます。
必要であれば、 レ イ ア ウ ト ビ ュ ーでデー タ ウ ィ ン ド ウ オブジ ェ ク
ト 内のすべてのカ ラ ム を表示で き る よ う に dw_detail コ ン ト ロ ール
を拡大 し ます。 ま た、 ウ ィ ン ド ウ を拡大す る こ と も で き ます。
194
PowerBuilder
レ ッ スン 8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
ア プ リ ケーシ ョ ンの再実行
現在の学習個所
マス タ ー データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ
ク ト のア タ ッ チ
詳細データ ウィ ン ド ウ コ ン ト ロ ールへのデータ ウィ ン ド ウ オブ ジ ェ ク ト
のア タ ッ チ
ア プ リ ケーシ ョ ン の実行
商品管理 ウィ ン ド ウへのデータ ウィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
> ア プ リ ケーシ ョ ン の再実行
こ の ス テ ッ プでは、 も う 一度アプ リ ケーシ ョ ン を実行 し て、 商品管理
ウ ィ ン ド ウ を テ ス ト し ます。
こ の時点で、商品管理 ウ ィ ン ド ウ には顧客情報 ウ ィ ン ド ウ のすべての
機能が備わっ てい ます。 顧客情報 ウ ィ ン ド ウ と 同様に、 商品管理 ウ ィ
ン ド ウ は、 デー タ ベース に対す る 検索、 挿入、 更新、 お よ び削除操作
のサポー ト を提供す る マ ス タ ー / 詳細 ウ ィ ン ド ウ と し て機能 し ます。
1
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
変更内容を保存す る か ど う か を問い合わせ る メ ッ セージ ボ ッ ク ス
が表示 さ れます。
2
[はい] を ク リ ッ ク し ます。
アプ リ ケーシ ョ ン が実行 さ れ、 ロ グ イ ン ウ ィ ン ド ウ が表示 さ れま
す。
3
[ユーザ ID] テキス ト ボ ッ ク スに 「dba」 と 入力 し ます。
[パスワー ド ] ボ ッ ク スに 「sql」 と 入力 し て、 [OK] ボ タ ン を ク リ ッ ク
し ます。
デー タ ベー ス と の接続が確立 さ れ、 ア プ リ ケ ーシ ョ ン の MDI フ
レームが開 き ます。
4
メ ニ ュ ー バーから [フ ァ イル|レポー ト |商品管理] を選択 し ます。
商品管理ウ ィ ン ド ウ が表示 さ れ ま す。 上部のデー タ ウ ィ ン ド ウ コ
ン ト ロ ールには Product テーブルか ら 検索 さ れたすべての行が表
示 さ れてい ます。
PowerBuilder 入門
195
ア プ リ ケーシ ョ ンの再実行
下部のデー タ ウ ィ ン ド ウ コ ン ト ロ ールには、 上部のデー タ ウ ィ ン
ド ウ コ ン ト ロ ールで選択 さ れた商品についての情報が表示 さ れて
い ます。
5
メ ニ ュ ー バーの [編集|挿入] を選択 し ます。
こ れで dw_detail デー タ ウ ィ ン ド ウ が ク リ ア さ れ、 新 し い行がデー
タ ウ ィ ン ド ウ に追加で き る よ う にな り ます。 カー ソ ルが dw_detail
コ ン ト ロ ールの [商品 ID] ボ ッ ク ス に置かれ ます。
6
下部のデー タ ウ ィ ン ド ウのボ ッ ク スに情報を入力 し て、新 し い製品行を追
加 し ます。
ボ ッ ク ス間の移動には 〔Tab〕 を使用 し ます。
7
メ ニ ュ ー バーの [編集|更新] を選択 し ます。
こ れで ue_update イ ベ ン ト の ス ク リ プ ト で コ ーデ ィ ン グ さ れた と
お り に、 新 し い商品のデー タ がデー タ ベー ス に送 ら れ、 確認 メ ッ
セージが表示 さ れます。
新 し い商品は ま だ上部のデー タ ウ ィ ン ド ウ に表示 さ れ ま せんが、
別の商品シー ト を開 く と 、 新 し い情報が表示 さ れ ま す。 必要で あ
れば、 更新ボ タ ン の Clicked イ ベ ン ト に コ ー ド を 追加 し て、 マ ス
タ ー デー タ ウ ィ ン ド ウ コ ン ト ロ ールでデー タ が自動的に更新 さ
れ る よ う にで き ます。
196
PowerBuilder
レ ッ スン 8
8
デー タ ウ ィ ン ド ウ オブ ジ ェ ク ト のア タ ッ チ
メ ッ セージ ボ ッ ク スで [OK] を ク リ ッ ク し ます。
マス タ ー デー タ ウ ィ ン ド ウで製品を ク リ ッ ク し ます。
その商品のデー タ が詳細デー タ ウ ィ ン ド ウ に表示 さ れます。
9
商品の単価を変更 し ます。
メ ニ ュ ー バーの [編集|更新] を選択 し ます。
こ れで変更 し た 商品デー タ がデー タ ベー ス に送 ら れ、 別の確認
メ ッ セージが表示 さ れます。
10
メ ッ セージ ボ ッ ク スで [OK] を ク リ ッ ク し ます。
マス タ ー デー タ ウ ィ ン ド ウで別の商品を選択 し ます。
その商品のデー タ が詳細デー タ ウ ィ ン ド ウ に表示 さ れます。
11
メ ニ ュ ー バーの [編集|削除] を選択 し ます。
デー タ ウ ィ ン ド ウ か ら はその商品がただちに削除 さ れ ますが、 [編
集] メ ニ ュ ーの [更新] オプシ ョ ン を選択す る ま でデー タ ベー ス
か ら は削除 さ れません。
12
メ ニ ュ ー バーから [フ ァ イル|終了] を選択 し ます。
アプ リ ケーシ ョ ン が終了 し 、 ウ ィ ン ド ウ ペ イ ン タ に戻 り ます。
13 ウ ィ ン ド ウ ペ イ ン タ を閉 じ ます。
PowerBuilder 入門
197
ア プ リ ケーシ ョ ンの再実行
198
PowerBuilder
レ ッ ス ン 9
デバ ッ ガの実行
開発中のアプ リ ケーシ ョ ン が思っ た と お り に動作 し ない こ と があ
り ま す。 適切な値が変数に割 り 当て ら れていない、 ス ク リ プ ト が
間違っ てい る な ど の原因が考え ら れます。こ の よ う な場合、デバ ッ
グ モー ド で実行す る こ と に よ っ て、 アプ リ ケーシ ョ ン を調べ る こ
と がで き ます。
デバ ッ グ モー ド では、 ブ レー ク ポ イ ン ト ( ス ト ッ プ) を ス ク リ プ
ト お よ び関数に挿入 し た り 、 コ ー ド を ス テ ッ プ ご と に実行 し た り 、
変数の内容を表示 し た り し て、 実行中にエ ラ ー と な る 論理エ ラ ー
やエ ラ ー箇所を確認す る こ と がで き ます。 デバ ッ グ モー ド でアプ
リ ケーシ ョ ン を実行す る と 、 ブ レー ク ポ イ ン ト を設定 し た ス ク リ
プ ト の手前で実行が停止 し ます。 こ の時点で、 変数の値を参照 し
て変更で き ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
ア プリ ケ ーショ ン のス ク リ プト へのブレ ーク ポイ ン ト の追加
•
デバッ グ モード でのア プリ ケ ーショ ン の実行
•
ウ ォ ッ チと 条件ブレ ーク ポイ ン ト の設定
所要時間
約 15 分
PowerBuilder 入門
199
ア プ リ ケーシ ョ ンのス ク リ プ ト へのブ レー ク ポ イ ン ト の追加
ア プ リ ケーシ ョ ンのス ク リ プ ト へのブ レー ク ポ イ ン ト の
追加
現在の学習個所
> ア プ リ ケーシ ョ ン のスク リ プ ト へのブ レ ーク ポイ ン ト の追加
デバッ グ モ ード でのア プ リ ケーシ ョ ン の実行
ウォ ッ チ と 条件ブ レ ーク ポイ ン ト の設定
こ の ス テ ッ プでは、 デバ ッ ガ を 開 き 、 ブ レ ー ク ポ イ ン ト を 追加 し て、
ロ グ イ ン ウ ィ ン ド ウ お よ び顧客情報 ウ ィ ン ド ウ の動作を テ ス ト し ま
す。 デバ ッ グ モー ド で ア プ リ ケーシ ョ ン を 実行す る と 、 ア プ リ ケー
シ ョ ンはブ レー ク ポ イ ン ト が設定 さ れてい る 行を実行す る 直前で停止
し ます。
ス ク リ プ ト にブ レー ク ポ イ ン ト を挿入す る と き は、 実行可能な文を含
む行を選択す る 必要があ り ます。 変数を宣言 し てい る 行、 コ メ ン ト 行、
ま たは空白行にブ レー ク ポ イ ン ト を設定 し よ う と す る と 、 ブ レー ク ポ
イ ン ト は自動的に次の実行可能な行に設定 さ れます。
1
パワーバーの [デバ ッ グ] ボ タ ン を ク リ ッ ク し ます。
デバ ッ ガが開 き ます。 デフ ォ ル ト の ビ ュー レ イ ア ウ ト では、 タ ブ
ペ イ ン の ス タ ッ ク が 3 つあ り ます。 デバ ッ グ ウ ィ ン ド ウ の左上に
あ るペ イ ンに、 ソ ース ビ ューが表示 さ れてい ます。
200
PowerBuilder
レ ッ スン 9
デバ ッ ガの実行
デバ ッ グ ウ ィ ン ド ウの表示が異な る場合
以前にデバ ッ グ ウ ィ ン ド ウ を開いて、 ビ ュ ーを開いた り 、 移動 し
た り 、 閉 じ た り し た場合は、 こ の画面 と は表示が異な る こ と が あ
り ます。デフ ォ ル ト の ビ ュー レ イ ア ウ ト 構成に戻すには、メ ニ ュ ー
バーの [ビ ュー|レ イ ア ウ ト | ( デフ ォ ル ト )] を選択 し ます。
アプ リ ケーシ ョ ン の Open イ ベン ト の ソ ース コ ー ド が、左上の ソ ー
ス ビ ュ ーに表示 さ れ ます。 表示 さ れない場合は、 ソ ース ブ ラ ウ ザ
ビ ュ ー の ツ リ ー ビ ュ ー の ア プ リ ケ ー シ ョ ン ノ ー ド を 展開 し 、
pbtutor アプ リ ケーシ ョ ン の下の Open イ ベン ト を ダ ブル ク リ ッ ク
し ます。
2
ソ ース ビ ュ ーで、 次の代入文を含む行を ダ ブルク リ ッ ク し ます。
this.ToolBarSheetTitle = "MDI ア プ リ ケーシ ョ ン ツール
バー "
PowerBuilder 入門
201
ア プ リ ケーシ ョ ンのス ク リ プ ト へのブ レー ク ポ イ ン ト の追加
行の先頭に赤い記号が表示 さ れ、 その文にブ レ ー ク ポ イ ン ト が設
定 さ れてい る こ と を示 し ます。
3
ソ ース ブ ラ ウザ ビ ュ ーで次の ノ ー ド を展開 し ます。
ウ ィ ン ド ウ >w_welcome>cb_ok
ソ ース ブ ラ ウ ザ ビ ューには、 コーデ ィ ン グ さ れた イ ベン ト だけが
一覧表示 さ れます。 ロ グ イ ン ウ ィ ン ド ウ の [OK] ボ タ ンの イ ベン
ト は Clicked イ ベン ト だけです。
4
ソ ース ブ ラ ウザ ビ ュ ーで cb_ok ボ タ ンの Clicked イ ベン ト を ダ ブル ク
リ ッ ク し ます。
ソ ース ビ ュ ーに Clicked イ ベン ト の コ ー ド が表示 さ れます。
5
次の行を ダブルク リ ッ ク し ます。
gnv_connect = CREATE &
n_pbtutor_connectservice
行の先頭にブ レー ク ポ イ ン ト を示す記号が表示 さ れます。
202
PowerBuilder
レ ッ スン 9
6
デバ ッ ガの実行
ソ ース ブ ラ ウザ ビ ュ ーで w_master_detail_ancestor を ダ ブルク リ ッ ク
し ます。
dw_master、 続いて rowfocuschanged を ダブルク リ ッ ク し ます。
ソ ー ス ビ ュ ーに、 dw_master デー タ ウ ィ ン ド ウ コ ン ト ロ ールの
RowFocusChanged イ ベン ト の ス ク リ プ ト が表示 さ れます。
7
次の行を ダ ブル ク リ ッ ク し ます。
IF dw_detail.Retrieve(ll_itemnum) = -1 THEN
行の先頭にブ レー ク ポ イ ン ト を示す記号が表示 さ れます。
8
右下のス タ ッ クの [ブ レー ク ポ イ ン ト ] タ ブ を選択 し ます。
ブ レー ク ポ イ ン ト ビ ュ ーに、 設定 し たブ レー ク ポ イ ン ト が表示 さ
れ ま す。 こ の レ ッ ス ン の作業を進め る には、 こ れ ら のブ レ ー ク ポ
イ ン ト が正 し く 設定 さ れてい る 必要があ り ます。
余分な ブ レー ク ポ イ ン ト がある場合
余分な ブ レ ー ク ポ イ ン ト は、 ブ レ ー ク ポ イ ン ト ビ ュ ーの ポ ッ プ
ア ッ プ メ ニ ュ ーを使用 し て取 り 消す こ と がで き ます。
PowerBuilder 入門
203
デバ ッ グ モー ド でのア プ リ ケーシ ョ ンの実行
デバ ッ グ モー ド でのア プ リ ケーシ ョ ンの実行
現在の学習個所
ア プ リ ケーシ ョ ン のスク リ プ ト へのブ レ ーク ポイ ン ト の追加
> デバッ グ モ ード でのア プ リ ケーシ ョ ン の実行
ウォ ッ チ と 条件ブ レ ーク ポイ ン ト の設定
こ の ス テ ッ プでは、 ア プ リ ケーシ ョ ン を デバ ッ グ モー ド で実行 し ま
す。 コ ー ド を 1 行ずつ実行 し ます。
ス テ ッ プ実行ボ タ ンについて
アプ リ ケーシ ョ ン を 1 文ずつ実行す る には、 [ス テ ッ プ イ ン] ま たは
[ス テ ッ プ オーバー] のいずれか を使用 し ま す。 次の文に関数の呼び
出 し が記述 さ れていない場合は、 ど ち ら も 同 じ 結果にな り ます。
[ス テ ッ プ オーバー] は、 関数を単独の文 と し て実行す る 場合に使用
し ます。
[ス テ ッ プ イ ン] は、 関数の中に入っ て、 関数内の各文の結果を確認
し たい場合に使用 し ます。 関数内に [ス テ ッ プ イ ン] し た場合は、 [ス
テ ッ プア ウ ト ] す る こ と に よ っ て、 その関数の残 り の部分を 1 ス テ ッ
プずつ実行で き ま す。 [ス テ ッ プ ア ウ ト ] す る と 、 その関数を呼び出
し た ス ク リ プ ト の次の文に制御が移 り ます。
1
ペ イ ン タ バー 1 の [開始] ボ タ ン を ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [デバ ッ グ|開始] を選択 し ます。
アプ リ ケーシ ョ ン が起動 し て、 ブ レー ク ポ イ ン ト の あ る 行 ま で実
行 さ れ ます。 こ こ では、 シー ト ウ ィ ン ド ウ の ツールバー タ イ ト ル
の代入文の呼び出 し ま でです。
ブ レ ー ク ポ イ ン ト のあ る 行 ま で達す る と 、 ア プ リ ケーシ ョ ン は停
止 し てデバ ッ グ ウ ィ ン ド ウ に戻 り ま す。 黄色い矢印カー ソ ルは、
次に実行 さ れ る 文を指 し てい ます。
2
左下のス タ ッ ク の [グローバル] タ ブ を ク リ ッ ク し ます。
グ ロ ーバル変数のビ ュ ーが表示 さ れます。
3
204
「transaction sqlca」 を ダ ブル ク リ ッ ク し ます。
dbms のプ ロパテ ィ を表示 し ます。
PowerBuilder
レ ッ スン 9
デバ ッ ガの実行
dbms プ ロ パテ ィ のデー タ 型は String 型です。ProfileString 関数が実
行 さ れ る 前に中断 さ れたので、 dbms プ ロ パテ ィ には何 も 値があ り
ません。
4
次の文を実行する ために、 ペ イ ン タ バー 1 の [ステ ッ プ イ ン] ボ タ ン を
ク リ ッ ク し ます。
または
メ ニ ュ ー バーの [デバ ッ グ|ステ ッ プ イ ン] を選択 し ます。
アプ リ ケーシ ョ ン が MDI フ レーム ウ ィ ン ド ウ の Open イ ベン ト の
実行を開始 し ます。
5
この フ レーム ウ ィ ン ド ウの Open イ ベン ト のス ク リ プ ト で次の文に到達
する ま で [ス テ ッ プ イ ン] または [ス テ ッ プ オーバー] を使用 し て コ ー
ド を実行 し ます。
open(w_welcome)
こ の ス テー ト メ ン ト を実行 し 終え る と 、 ロ グ イ ン ウ ィ ン ド ウ が表
示 さ れ、 デバ ッ グ ウ ィ ン ド ウ が最小化 さ れます。
ま た、 こ の フ レ ーム ウ ィ ン ド ウ の Open イ ベン ト には、 ポ ス ト さ
れた ue_postopen 関数の呼び出 し も あ り ます (確認せずに実行 し た
も の)。 こ れがシー ト マネージ ャ の関数を呼び出 し ます。 こ れ ら の
関数は Open イ ベン ト の ス ク リ プ ト の最後で ( ロ グ イ ン ウ ィ ン ド
ウ の表示後に) 処理 さ れ ます。
6
PowerBuilder 入門
ログ イ ン ウ ィ ン ド ウが表示 さ れ、 デバ ッ ガが最小化 さ れる ま で、 [ステ ッ
プ オーバー] を ク リ ッ ク し ます。
ログ イ ン ウ ィ ン ド ウの [ユーザ ID] ボ ッ ク スに 「dba」 と 入力 し ます。
[パスワー ド ] ボ ッ ク スに 「sql」 と 入力 し て、 [OK] を ク リ ッ ク し ます。
205
デバ ッ グ モー ド でのア プ リ ケーシ ョ ンの実行
デバ ッ グ ウ ィ ン ド ウ に戻 り ま す。 ソ ー ス ビ ュ ーの黄色い矢印は、
次の実行可能な文であ る接続サービ ス オブジ ェ ク ト の CREATE 文
を指 し ます。こ れが cb_ok コ マ ン ド ボ タ ン の Clicked イ ベン ト の ス
ク リ プ ト で最初の実行可能な行です。
7
右下のス タ ッ ク の [コ ール ス タ ッ ク] タ ブ を選択 し ます。
コ ール ス タ ッ ク ビ ューの黄色い矢印は、コール ス タ ッ ク 内での現
在の位置を表 し ま す。 コ ール ス タ ッ ク 内の別の行を ダブル ク リ ッ
ク す る と 、 ソ ース ビ ュ ー と 変数ビ ュ ーがその行の コ ン テ キ ス ト を
表示す る よ う に変更 さ れ、 ソ ース ビ ュ ーでは緑色の矢印がその行
を示 し ます。 次に、 コ ール ス タ ッ ク 内の別の行を 1 回 ク リ ッ ク す
る と 、 コール ス タ ッ ク ビ ュ ーに緑色の矢印が表示 さ れ、 コ ン テ キ
ス ト が表示 さ れて い る 行 を 指 し ま す。 コ ー ド の実行 を 続け る と 、
ソ ース ビ ュ ー と 変数ビ ュ ーが現在の コ ン テ キ ス ト に戻 り ます。
8
[ステ ッ プ イ ン] ボ タ ン を ク リ ッ ク し ます。
接続サービ ス オブジ ェ ク ト の Constructor イ ベン ト の ス ク リ プ ト に
移動 し ます。
9
[ステ ッ プ アウ ト ] ボ タ ン を ク リ ッ ク し ます。
左下のス タ ッ ク の [グローバル] タ ブ を ク リ ッ ク し ます。
も う 一度、 Transaction オブ ジ ェ ク ト のプ ロパテ ィ を確認 し ます。
ス テ ッ プ ア ウ ト を実行す る こ と で、 Constructor イ ベン ト か ら 1 ス
テ ッ プで抜けて、 [OK] ボ タ ン の Clicked イ ベン ト の ス ク リ プ ト に
戻 り ま す。 DBMS プ ロ パ テ ィ には値が入 っ て い ま すが、 UserID、
DBPass、 お よ び DBParm プ ロ パテ ィ には入っ てい ません。
206
PowerBuilder
レ ッ スン 9
デバ ッ ガの実行
こ れ ら の値は、 接続サービ ス オブジ ェ ク ト の Constructor イ ベン ト
の実行時に、 of_GetConnectionInfo 関数が INI フ ァ イ ルか ら の情報
を返 し た後で代入 さ れますが、 こ のチ ュ ー ト リ アルでは、 UserID、
DBPass、 お よ び DBParm プ ロ パテ ィ の行を コ メ ン ト ア ウ ト し たの
で、 こ れ ら の値は取得 さ れません。
10 左下のス タ ッ ク で [ロー カル] タ ブ を ク リ ッ ク し ます。
Clicked ス ク リ プ ト の ロ ーカル変数には ま だ値が代入 さ れてい ませ
ん。
11 [ス テ ッ プ イ ン] ボ タ ン を使用 し て ロー カル変数の 3 つの代入文を実行 し
ます。
それぞれの文を実行す る と 、 こ れ ら の ロ ーカル変数に代入 さ れた
値が予想 し た も のであ る こ と を確認す る こ と がで き ます。
PowerBuilder 入門
207
デバ ッ グ モー ド でのア プ リ ケーシ ョ ンの実行
12 左下のス タ ッ ク の [グローバル] タ ブ を も う 一度ク リ ッ ク し 、Transaction
オブ ジ ェ ク ト を展開 し ます。
[ステ ッ プ イ ン] ボ タ ン を使用 し て、Transaction オブ ジ ェ ク ト (SQLCA)
を ユーザが入力 し た値を用いて イ ン ス タ ン ス化する 3 つの行を実行 し ま
す。
それぞれの文を実行す る と 、 ロ グ イ ン ウ ィ ン ド ウ で入力 し た値が
Transaction オブ ジ ェ ク ト に代入 さ れてい る か ど う か を確認で き ま
す。 デー タ ベー ス へ の 接続 は、 接続 サ ー ビ ス オ ブ ジ ェ ク ト の
of_Connect 関数を実行す る ま では行われません。
13 ペ イ ン タ バー 1 の [実行の継続] ボ タ ン を ク リ ッ ク し ます。
[実行の継続] ボ タ ンは、 実行を再開 し 、 次のブ レー ク ポ イ ン ト ま
で処理を進め ます。 デー タ ベース に接続 し 、 ロ グ イ ン ウ ィ ン ド ウ
が閉 じ 、 アプ リ ケーシ ョ ンの MDI フ レーム が表示 さ れます。 アプ
リ ケーシ ョ ンはユーザか ら の入力を待機 し てい ます。
14
メ ニ ュ ー バーか ら [フ ァ イル|レポー ト |顧客情報] を選択 し ます。
アプ リ ケーシ ョ ン は、 RowFocusChanged イ ベン ト 内の次のブ レー
ク ポ イ ン ト が設定 さ れてい る 行ま で実行 さ れます。
デー タ ウ ィ ン ド ウ の RowFocusChanged イ ベン ト は、 デー タ ウ ィ ン
ド ウ が表示 さ れ る 前に発生 し ま す。 こ のため、 アプ リ ケーシ ョ ン
の実行は顧客情報 ウ ィ ン ド ウ が開かれ る前に停止 し ます。
208
PowerBuilder
レ ッ スン 9
デバ ッ ガの実行
ウ ォ ッ チ と 条件ブ レー ク ポ イ ン ト の設定
現在の学習個所
ア プ リ ケーシ ョ ン のス ク リ プ ト へのブ レ ーク ポイ ン ト の追加
デバッ グ モ ード でのア プ リ ケーシ ョ ン の実行
> ウォ ッ チと 条件ブ レ ーク ポイ ン ト の設定
こ の ス テ ッ プでは、 ユーザが顧客情報 ウ ィ ン ド ウ で行を選択す る と 値
が変化す る 変数に、 ウ ォ ッ チ を設定 し ます。 次に、 設定 し た単純なブ
レー ク ポ イ ン ト を、 変数が特定の値を持つ場合にのみ発生す る 条件ブ
レー ク ポ イ ン ト に変更 し ます。
1
右下のス タ ッ ク で [ウ ォ ッ チ] タ ブ を ク リ ッ ク し ます。
左下のス タ ッ ク で [ロー カル] タ ブ を ク リ ッ ク し ます。
ロー カル ビ ュ ーで ll_itemnum 変数を選択 し 、 ウ ォ ッ チ ビ ュ ーに ド ラ ッ
グ し ます。
ll_itemnum 変数に、 検索 さ れた最初の顧客 ID の値で あ る 101 が
セ ッ ト さ れます。 ウ ォ ッ チ ビ ュ ーで ll_itemnum 変数を表示 さ せ る
と 、その値の変化を簡単に調べ る こ と がで き ます。ウ ォ ッ チ ビ ュ ー
には、 グ ロ ーバル変数、 イ ン ス タ ン ス変数、 お よ び Parent 変数を
ド ラ ッ グ で き る ため、 種類の異な る 変数の値を簡単に追跡す る こ
と がで き ます。
2
[実行の継続] ボ タ ン を ク リ ッ ク し ます。
再びアプ リ ケーシ ョ ン が実行 さ れ ま す。 顧客情報 ウ ィ ン ド ウ が表
示 さ れて、 デー タ ベース か ら 検索 し た顧客 リ ス ト が表示 さ れます。
詳細デー タ ウ ィ ン ド ウ には顧客 ID が 101 の顧客情報が表示 さ れま
す。
3
顧客情報 ウィ ン ド ウのマスタ ー データ ウィ ン ド ウで別の行を 選択し ます。
デバ ッ グ ウ ィ ン ド ウ に戻 り ます。 ロ ーカル変数ビ ュ ー と ウ ォ ッ チ
ビ ュ ーの両方で ll_itemnum の値が更新 さ れます。
4
右下のス タ ッ ク で [ブ レー ク ポ イ ン ト ] タ ブ を ク リ ッ ク し ます。
rowfocuschanged ブ レー ク ポ イ ン ト を ダブルク リ ッ ク し ます。
ブ レ ー ク ポ イ ン ト の 編 集 ダ イ ア ロ グ ボ ッ ク ス が 表 示 さ れ て、
RowFocusChanged イ ベ ン ト 内の ブ レ ー ク ポ イ ン ト が選択 さ れ ま
す。
PowerBuilder 入門
209
ウ ォ ッ チ と 条件ブ レー ク ポ イ ン ト の設定
5
[条件] テキス ト ボ ッ ク スに次の行を入力 し て [OK] ボ タ ン を ク リ ッ ク し
ます。
ll_itemnum = 107
RowFocusChanged イ ベン ト ス ク リ プ ト 内のブ レー ク ポ イ ン ト が条
件ブ レー ク ポ イ ン ト に設定 さ れ ま す。 ア プ リ ケーシ ョ ン の実行中
に こ の ス テー ト メ ン ト に達 し 、 かつ、ll_itemnum の値が 107 であ る
場合にのみ、 そのアプ リ ケーシ ョ ン が停止 し ます。
6
[OK] を ク リ ッ ク し て、 ダ イ ア ログボ ッ ク ス を閉 じ ます。
[実行の継続] ボ タ ン を ク リ ッ ク し ます。
再びアプ リ ケーシ ョ ン が実行 さ れ ま す。 顧客情報 ウ ィ ン ド ウ で別
の行を選択す る と 、 顧客 ID が 107 の顧客を選んだ場合に限 り 、 ブ
レー ク ポ イ ン ト に達 し た時点でデバ ッ グ ウ ィ ン ド ウ が開き ます。
顧客 ID が 107 の顧客情報を選択 し た場合は、 も う 一度 [実行の継
続] ボ タ ン を ク リ ッ ク し て元のアプ リ ケーシ ョ ン に戻 り ます。
7
ア プ リ ケーシ ョ ンの メ ニ ュ ー バーか ら [フ ァ イル|終了] を選択 し ます。
アプ リ ケーシ ョ ン を終了 し て、 デバ ッ グ ウ ィ ン ド ウ に戻 り ます。
8
メ ニ ュ ー バーか ら [フ ァ イル|閉 じ る] を選択 し ます。
PowerBuilder の開発環境に戻 り ます。
210
PowerBuilder
レ ッ ス ン 1 0
例外処理
例外処理では、プ ロ グ ラ ム の実行中に発生 し たエ ラ ーを捕捉 し 、そ
れ ら のエ ラ ーに関する 情報を アプ リ ケーシ ョ ン ユーザに提供 し ま
す。 こ の レ ッ ス ン では、 ユーザ定義の例外オブジ ェ ク ト を作成す
る 方法、 メ ソ ッ ド 内で TRY-CATCH 文に よ っ て送出 し た例外を捕
捉す る 方法について解説 し ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
既存のアプ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウ の追加
•
ユーザ定義の例外オブジ ェ ク ト の作成
•
新規のユーザ関数 と ユーザ イ ベン ト の作成
•
メ ソ ッ ド の呼び出 し と 例外の捕捉
•
アプ リ ケーシ ョ ン の実行
所要時間
約 45 分
PowerBuilder 入門
211
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの
追加
現在の学習個所
> 既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
ユーザ定義の例外オブ ジ ェ ク ト の作成
新規のユーザ関数 と ユーザ イ ベン ト の作成
メ ソ ッ ド の呼び出 し と 例外の捕捉
ア プ リ ケーシ ョ ンの実行
こ の レ ッ ス ン では、 メ イ ンのチ ュー ト リ アル アプ リ ケーシ ョ ン に 3 つ
目のシー ト ウ ィ ン ド ウ を追加 し ます。 そ し て、 埋め込み SQL コ マ ン ド
か ら 返 さ れ る 値、お よ びアプ リ ケーシ ョ ン ユーザが ド ロ ッ プダ ウ ン リ
ス ト ボ ッ ク ス コ ン ト ロ ールで選択 し た値に対 し て (パーセ ン テージ を
計算す る と い っ た) 決ま り き っ た操作を実行す る 関数を作成 し て呼び
出 し ます。
作成す る 関数のプ ロ ト タ イ プでユーザ定義の例外を発生 さ せます。 コ
マ ン ド ボ タ ン コ ン ト ロ ー ル の Clicked イ ベ ン ト に 記 述 さ れ た
TRY-CATCH ブ ロ ッ ク 内で こ の関数を呼び出 し ま す。 そ し て、 アプ リ
ケーシ ョ ン コ ール ス タ ッ ク の上位に送出 さ れた シ ス テ ム 例外 と 同 じ
よ う に、 新規の関数に よ っ て送出 さ れたユーザ定義の例外を捕捉す る
CATCH 句を Clicked イ ベン ト に記述 し ます。
さ ら に、 新規の ウ ィ ン ド ウ シー ト を使用 し て、 選択 し た都道府県に住
んでい る 顧客のパーセ ン テージ を計算 し ます。 新規のシー ト ウ ィ ン ド
ウ に追加す る コ ン ト ロ ールは以下の と お り です。
•
読み取 り 専用の結果を表示す る ためにプ ロ グ ラ ム で変更す る 2 つ
のス タ テ ィ ッ ク テキ ス ト ボ ッ ク ス
•
パーセ ン テージ を計算す る 関数を呼び出す コ マ ン ド ボ タ ン
•
顧客の在住の都道府県を リ ス ト す る ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク
ス
•
ユーザが ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス か ら 選択 し た都道府県に
住んでい る顧客のパーセ ン テージが表示 さ れ る テ キ ス ト ボ ッ ク ス
既存のアプ リ ケーシ ョ ン に新規のシー ト ウ ィ ン ド ウ を追加す る には、
以下の操作を行 う 必要があ り ます。
212
•
シー ト ウ ィ ン ド ウ の作成
•
メ イ ン アプ リ ケーシ ョ ン フ レーム か ら シー ト ウ ィ ン ド ウ にア ク
セ ス で き る よ う にす る
PowerBuilder
レ ッ ス ン 10
例外処理
シー ト ウ ィ ン ド ウの作成
シー ト ウ ィ ン ド ウ は、w_pbtutor_basesheet ウ ィ ン ド ウ か ら 継承 し ます。
こ の ウ ィ ン ド ウ はシー ト ウ ィ ン ド ウ の基本 ク ラ ス で、テ ン プ レー ト ア
プ リ ケーシ ョ ン ウ ィ ザー ド に よ っ て生成 さ れた も のです。 拡張レ イ ヤ
ウ ィ ン ド ウ w_master_detail_ancestor は、 変更 を 加 え た た め に新規の
シー ト ウ ィ ン ド ウ では再利用で き ないので、 使用 し ません。
1
PowerBuilder メ ニ ュ ーから [フ ァ イル|継承] を選択 し ます。
PBTutor.PBL ラ イ ブ ラ リ 内の使用可能なウ ィ ン ド ウか ら
w_pbtutor_basesheet を選択 し て、 [OK] を ク リ ッ ク し ます。
2
ウ ィ ン ド ウペ イ ン タ にレ イ アウ ト ビ ュ ーが表示 さ れている こ と を確認 し
て く だ さ い。
[挿入| コ ン ト ロ ール|ス タ テ ィ ッ ク テ キ ス ト ] を 選択 し 、 レ イ ア ウ ト
ビ ュ ーの左上隅を ク リ ッ ク し ます。
3
プ ロパテ ィ ビ ュ ーで、 [テキス ト ] テキス ト ボ ッ ク スに入力 さ れているデ
フ ォル ト のテキス ト を選択 し て、 次のよ う に入力 し ます。
1. ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで都道府県 コ ー ド を選択または
入力 し て く だ さ い。
4
テキス ト 全体が収ま る よ う に、 ま たウ ィ ン ド ウの右上に ド ロ ッ プ ダウ ン
リ ス ト ボ ッ ク ス コ ン ト ロールを配置で き る よ う に、 コ ン ト ロールの幅 と
シー ト ウ ィ ン ド ウの幅を広げます。
シー ト ウ ィ ン ド ウ の幅は 2250 あれば十分です。
5
レ イ アウ ト ビ ュ ー内のス タ テ ィ ッ ク テキス ト コ ン ト ロールを右ク リ ッ
ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから [複製] を選択 し ます。
プ ロパテ ィ ビ ュ ーで、 新規のス タ テ ィ ッ ク テキス ト コ ン ト ロールの [テ
キス ト ] テキス ト ボ ッ ク スに入力 さ れているデ フ ォル ト のテキス ト を選択
し て、 次のよ う に入力 し ます。
2.
PowerBuilder 入門
[パーセ ン テージ] ボ タ ン を ク リ ッ ク し て く だ さ い。
213
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
6
[挿入| コ ン ト ロール| ド ロ ッ プダウン リ ス ト ボ ッ ク ス] を選択 し 、 レ イ
ア ウ ト ビ ュ ーの右上隅にあ る ス タ テ ィ ッ ク テキス ト ボ ッ ク スの右側を
ク リ ッ ク し ます。
7
ド ロ ッ プ ダウン リ ス ト ボ ッ ク スのプ ロパテ ィ ビ ュ ーで、 コ ン ト ロールの
名前に 「ddlb_state」 と 入力 し ます。
[編集可能] と [垂直ス ク ロールバー ] の 2 つのチ ェ ッ ク ボ ッ ク ス を オ ン
に し ます。
8
ペ イ ン タ バーのコ マ ン ド ボ タ ン を ク リ ッ ク し 、2 つのス タ テ ィ ッ ク テキス
ト ボ ッ ク スの下を ク リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーで、 ボ タ ン名に 「cb_percent」、 ボ タ ンのテキス ト に
「パーセ ン テージ」 と 入力 し ます。
9
[挿入| コ ン ト ロール|シ ン グルラ イ ン エデ ィ ッ ト ] を選択 し て、 レ イ ア
ウ ト ビ ュ ーの コ マ ン ド ボ タ ンの下 ク リ ッ ク し ます。
プ ロパテ ィ ビ ュ ーで、 コ ン ト ロールの名前に 「sle_result」 と 入力 し 、
コ ン ト ロールのテキス ト に以下の説明文を入力 し ます。
選択 し た都道府県に住んでいる顧客のパーセ ン テージ を表示する テ
キス ト ボ ッ ク ス
10 テキス ト 全体が収ま る よ う に コ ン ト ロールの幅を広げます。
214
PowerBuilder
レ ッ ス ン 10
11
例外処理
どの コ ン ト ロール も選択 さ れていない こ と 、 プ ロパテ ィ ビ ュ ーにシー ト
ウ ィ ン ド ウ プ ロパテ ィ が表示 さ れている こ と を確認 し ます。
[ タ グ] プ ロパテ ィ に 「都道府県に住んでい る顧客のパーセ ン テージ」 と
入力 し ます。
こ こ で入力 し た テ キ ス ト は、 実行時にシー ト ウ ィ ン ド ウ の タ イ ト
ル と し て表示 さ れます。 基本シー ト の ue_postopen イ ベン ト の コ ー
ド で、 タ グのテ キ ス ト がシー ト ウ ィ ン ド ウ の タ イ ト ルに割 り 当て
ら れ ます。
12 PowerBuilder メ ニ ュ ーから [フ ァ イル|上書き保存] を選択 し ます。
ア プ リ ケーシ ョ ン ラ イ ブ ラ リ と し て PBTUTOR.PBL を選択 し 、新規ウ ィ
ン ド ウ名に 「w_cust_pct」 と 入力 し て、 [OK] を ク リ ッ ク し ます。
新規のシー ト ウ ィ ン ド ウ と そのすべての コ ン ト ロ ールを、 メ イ ン
のチ ュー ト リ アル ラ イ ブ ラ リ に保存 し ます。
メ イ ン ア プ リ ケーシ ョ ン フ レ ームか ら シー ト ウ ィ ン ド ウにア ク セスで
き る よ う にする
新規のシー ト はシー ト マネージ ャ に登録 し ます。
1
シ ス テム ツ リ ーで w_pbtutor_frame を ダ ブル ク リ ッ ク し ます。
2
ue_postopen イ ベン ト がス ク リ プ ト ビ ュ ーに表示 さ れていない場合は、
[イ ベン ト リ ス ト ] タ ブ を選択 し て、 ue_postopen を ダ ブルク リ ッ ク し ま
す。
ue_postopen イ ベン ト ス ク リ プ ト が、ス ク リ プ ト ビ ュ ーに表示 さ れ
ます。
3
登録済みシー ト ウ ィ ン ド ウの リ ス ト に以下の行を入力 し ます。
ls_sheets[3] = "w_cust_pct"
4
登録済みシー ト ウ ィ ン ド ウの リ ス ト の下に以下の行を入力 し ます。
ls_display[3] = " 都道府県に住んでいる 顧客のパーセン テージ "
PowerBuilder 入門
215
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
よ り 良い コ ーデ ィ ングの習慣
シー ト ウ ィ ン ド ウ と 表示名を定義す る 6 行の コ ー ド は、 次の 2 行
の コー ド に短縮で き ます。
// シー ト ウ ィ ン ド ウ と 表示名を定義する
string ls_sheets[]={"w_customers", "w_products",&
"w_cust_pct"}
string ls_display[]={" 顧客情報 ", &
" 商品管理 ", &
" 都道府県に住んでい る顧客のパーセ ン テージ " }
5
[フ ァ イル|上書き保存] を選択 し て、 w_pbtutor_frame ウ ィ ン ド ウを閉
じ ます。
次回 pbtutor アプ リ ケーシ ョ ン を実行す る と 、メ イ ン フ レーム ウ ィ
ン ド ウ の [フ ァ イ ル] メ ニ ュ ーか ら 新規のシー ト ウ ィ ン ド ウ を開
く こ と がで き る はずです。 開発環境では新規のシー ト ウ ィ ン ド ウ
を即実行で き ま すが、 コ ン パ イ ル済みア プ リ ケーシ ョ ン で も 実行
で き る よ う にす る必要があ り ます。
そ の た めに、 シー ト マ ネージ ャ の of_registersheet ス ク リ プ ト で、
新規の シー ト ウ ィ ン ド ウ を ウ ィ ン ド ウ オブ ジ ェ ク ト と し て参照
し ま す。 こ う し て参照す る こ と で、 コ ン パ イ ラ は、 こ の ウ ィ ン ド
ウ オブジ ェ ク ト がアプ リ ケーシ ョ ン で使用 さ れてい る こ と を認識
で き、 実行可能フ ァ イ ルに含め る こ と がで き ます。
コ ンパ イ ル済みアプ リ ケーシ ョ ンは、レ ッ ス ン 11「アプ リ ケーシ ョ
ン配布の準備」 で作成 し ます。
6
216
シ ス テム ツ リ ーで n_pbtutor_sheetmanager を ダブルク リ ッ ク し ます。
PowerBuilder
レ ッ ス ン 10
7
例外処理
[関数 リ ス ト ] タ ブ を選択 し 、 of_registersheet を ダブルク リ ッ ク し ます。
ス ク リ プ ト ビ ュ ーに、 of_registersheet 関数の ス ク リ プ ト が表示 さ
れ ます。
8
w_customers と w_products の各シー ト ウ ィ ン ド ウ変数を宣言 し てい
る行の後に以下のよ う に入力 し ます。
w_cust_pct
9
PowerBuilder 入門
lw_sheet3
[上書き保存] を選択 し て、 ユーザ オブ ジ ェ ク ト
n_pbtutor_sheetmanager を閉 じ ます。
217
ユーザ定義の例外オブ ジ ェ ク ト の作成
ユーザ定義の例外オブ ジ ェ ク ト の作成
現在の学習個所
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
> ユーザ定義の例外オブ ジ ェ ク ト の作成
新規のユーザ関数 と ユーザ イ ベン ト の作成
メ ソ ッ ド の呼び出 し と 例外の捕捉
ア プ リ ケーシ ョ ンの実行
こ こ では、 ユーザが w_cust_pct ウ ィ ン ド ウ 上の コ マ ン ド ボ タ ン を ク
リ ッ ク し た と き に起動 さ れ る関数か ら 送出 さ れ る 2 つのユーザ定義の
例外オブ ジ ェ ク ト を作成 し ま す。 ま た、 w_cust_pct ウ ィ ン ド ウ に追加
し た ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス コ ン ト ロ ールのユーザ イ ベン ト
か ら 送出 さ れ る ユーザ定義の例外オブジ ェ ク ト も 作成 し ます。
1
PowerBuilder メ ニ ュ ーか ら [フ ァ イル|新規作成] を選択 し 、 新規作成
ダ イ ア ログボ ッ ク スの [PB オブ ジ ェ ク ト ] タ ブ を ク リ ッ ク し ます。
2
[標準ク ラ ス] ア イ コ ン を選択 し て [OK] を ク リ ッ ク し ます。
[デー タ 型] リ ス ト ボ ッ ク スか ら 「throwable」 を選択 し て、 [OK] を ク
リ ッ ク し ます。
新規例外オブ ジ ェ ク ト がユーザ オブ ジ ェ ク ト ペ イ ン タ に表示 さ
れ ます。
3
プ ロパテ ィ ビ ュ ーの [テキス ト ] ボ ッ ク スに以下のよ う に入力 し ます。
デー タ ベースに該当する行があ り ません。 ド ロ ッ プ ダウン リ ス ト
ボ ッ ク スで都道府県コ ー ド を入力または選択 し た場合で、 デー タ
ベース と の接続が切断 さ れていなければ、 入力 し た都道府県に顧客
が住んでいないか、 入力 し た都道府県コ ー ド が間違っ ています。
例外オブジ ェ ク ト には、 テ キ ス ト プ ロ パテ ィ の取得お よ び設定用
メ ソ ッ ド が定義 さ れてい ま すが、 こ こ ではユーザ イ ン タ フ ェ ース
に直接テ キ ス ト プ ロ パテ ィ を設定 し ます。
218
4
[フ ァ イル|上書き保存] を選択 し て、 PBTUTOR.PBL ア プ リ ケーシ ョ ン
ラ イ ブ ラ リ を選択 し 、 新規のユーザ オブ ジ ェ ク ト 名に 「exc_no_rows」
と 入力 し ます。
5
[フ ァ イル|閉 じ る] を選択 し ます。
PowerBuilder
レ ッ ス ン 10
6
7
PowerBuilder 入門
例外処理
以下のテキス ト プ ロパテ ィ 値 と 例外オブ ジ ェ ク ト 名を用いて手順 1 ~ 5
を繰 り 返 し ます。
プ ロパテ ィ
値
テキ ス ト
パーセ ン テージが低すぎ ます。 こ の都道府県には
顧客が 1 人 し かいません。 担当販売マネージ ャ
に連絡 し て く だ さ い。
例外オブジ ェ ク ト 名
exc_low_number
以下のテキス ト プ ロパテ ィ 値 と 例外オブ ジ ェ ク ト 名を用いて手順 1 ~ 5
を繰 り 返 し ます。
プ ロパテ ィ
値
テキ ス ト
都道府県名は 2 文字の都道府県 コ ー ド で指定 し
て く だ さ い。
例外オブジ ェ ク ト 名
exc_bad_entry
219
新規のユーザ関数 と ユーザ イ ベン ト の作成
新規のユーザ関数 と ユーザ イ ベン ト の作成
現在の学習個所
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
ユーザ定義の例外オブ ジ ェ ク ト の作成
> 新規のユーザ関数 と ユーザ イ ベン ト の作成
メ ソ ッ ド の呼び出 し と 例外の捕捉
ア プ リ ケーシ ョ ンの実行
こ こ では、[パーセ ン テージ] コ マ ン ド ボ タ ン の Clicked イ ベン ト に よ っ
て起動 さ れ る 関数 と 、 w_cust_pct ウ ィ ン ド ウ の ド ロ ッ プダ ウ ン リ ス ト
ボ ッ ク ス か ら フ ォ ーカ ス が移動 し た と き に起動す る イ ベン ト を追加 し
ます。 こ こ で作成す る 関数は、 特定の都道府県に住む顧客のパーセ ン
テージ を計算 し ます。 イ ベン ト は、 ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス コ
ン ト ロ ールの現在値 (都道府県 コー ド ) を処理 し 、 長 さ が 2 文字か ど
う か を確認 し ます。
1
ウ ィ ン ド ウペ イ ン タ 内で w_cust_pct が開いていない場合はそれを開き
ます。
ウ ィ ン ド ウペ イ ン タ の メ ニ ュ ーで [挿入|関数] を選択 し ます。
プ ロ ト タ イ プ ウ ィ ン ド ウ に ス ク リ プ ト ビ ュ ーが表示 さ れます。 ス
ク リ プ ト ビ ュ ーの最初の ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク ス に は
「(Functions)」 が、 2 番目の リ ス ト ボ ッ ク ス には 「( 新規関数 )」 が
表示 さ れ ます。
220
2
戻 り 値の型 と し て 「decimal」 を 選択 し 、 関数名に 「uf_percentage」
と 入力 し ます。
3
第 1 引数の型 と し て 「integer」 を選択 し 、 第 1 引数名に
「ai_custbystate」 と 入力 し ます。
4
プ ロ ト タ イ プ ウ ィ ン ド ウ内のど こかで右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ
ニ ュ ーの [パラ メ ー タ の追加] を選択 し ます。
5
第 2 引数の型 と し て 「integer」 を選択 し て、 第 2 引数名に
「ai_totalcust」 と 入力 し ます。
6
[Throws] ボ ッ ク スで 「exc_no_rows,exc_low_number」 と 入力 し ま
す。
PowerBuilder
レ ッ ス ン 10
7
例外処理
以下のス ク リ プ ト を新規関数に入力 し ます。
Decimal my_result
exc_no_rows le_nr
exc_low_number le_ex
/* パラ メ ー タ と し て渡 さ れた 2 つの整数を処理する。 最初の整数
が 0 または 1 の場合は、 例外を イ ン ス タ ン ス化 し て送出する。 そ
れ以外の場合は、 パーセン テージ を小数点以下第一位ま で計算 し て
返す。 2 番目の整数が 0 の場合は、 計算中に、 実行時のゼロによ る
除算例外を捕捉 し て再送出する。
*/
CHOOSE CASE ai_custbystate
CASE 0
le_nr = create exc_no_rows
throw le_nr
CASE 1
le_ex = create exc_low_number
throw le_ex
CASE ELSE
TRY
my_result= (ai_custbystate/ai_totalcust)
*100
CATCH (dividebyzeroerror le_zero)
throw le_zero
End TRY
END CHOOSE
return truncate (my_result,1)
後述す る コ マ ン ド ボ タ ン の Clicked イ ベン ト ス ク リ プ ト では、2 つ
の整数を引数 と し て uf_percentage 関数を呼び出 し 、 戻 り 値を処理
し ます。
次に、 ユーザが入力 し た都道府県 コ ー ド がち ょ う ど 2 文字でない
場合に exc_bad_entry 例外オブジ ェ ク ト を送出す る 、 ド ロ ッ プダ ウ
ン リ ス ト ボ ッ ク ス のユーザ イ ベン ト を追加 し ます。
PowerBuilder 入門
8
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スで
「ddlb_state」 を、 2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで 「( 新規イ
ベン ト )」 を選択 し ます。
9
戻 り 値の型 と し て 「integer」 を選択 し 、 イ ベ ン ト 名に 「ue_modified」
と 入力 し ます。
引数の型 と し て 「string」 を選択 し 、 引数名に 「as_statecode」 と 入力
し ます。
「exc_bad_entry」 を [Throws] ボ ッ ク ス に入力す るか、 シ ス テム ツ
リ ーか ら [Throws] ボ ッ ク スに ド ラ ッ グ し ます。
221
新規のユーザ関数 と ユーザ イ ベン ト の作成
イ ベン ト ID は、 「None」 であ る こ と に注意 し て く だ さ い。 イ ベン
ト ID は、Throws 句にユーザ定義の例外オブジ ェ ク ト を含ま ないプ
ロ ト タ イ プ を定義 し ます。
10 新規の ue_modified のス ク リ プ ト を以下のよ う に入力 し ます。
exc_bad_entry le_ex
// ド ロ ッ プダウン リ ス ト ボ ッ ク スに入力 さ れている
// テキス ト の長 さ が 2 文字である こ と を確認 し 、
//2 文字でなければ exc_bad_entry 例外オブ ジ ェ ク ト
// を イ ン ス タ ン ス化 し て送出する
IF len (this.text)<>2 Then
le_ex = create exc_bad_entry
throw le_ex
END IF
Return 1
次に、 ue_modified イ ベン ト と uf_percentage 関数を呼び出 し て、 こ
れ ら の メ ソ ッ ド に よ っ て送出 さ れた例外を捕捉 し ます。
222
PowerBuilder
レ ッ ス ン 10
例外処理
メ ソ ッ ド の呼び出 し と 例外の捕捉
現在の学習個所
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
ユーザ定義の例外オブ ジ ェ ク ト の作成
新規のユーザ関数 と ユーザ イ ベン ト の作成
> メ ソ ッ ド の呼び出 し と 例外の捕捉
ア プ リ ケーシ ョ ンの実行
こ こ では、 都道府県 コ ー ド を EAS Demo DB デー タ ベース の customer
表か ら 取得 し て、 ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス コ ン ト ロ ールに設定
す る コ ー ド を記述 し ます。 こ の コ ン ト ロ ールは編集可能に し て あ る た
め、 都道府県 コー ド の値を アプ リ ケーシ ョ ン ユーザが入力す る こ と も
で き ます。 ユーザが入力 し た値を処理す る 前に、 入力値が ue_modified
イ ベン ト に設定 し た条件を満た し てい る か ど う か、 すなわち長 さ が 2
文字であ る か ど う か を確認 し ます。
ま た、 コ マ ン ド ボ タ ン コ ン ト ロ ールの Clicked イ ベン ト に、 ド ロ ッ プ
ダ ウ ン リ ス ト ボ ッ ク ス コ ン ト ロ ールに入力 さ れてい る 都道府県 コ ー
ド を処理す る コ ー ド を追加 し ます。Clicked イ ベン ト では、uf_percentage
関数を呼び出 し て、 選択 さ れてい る 都道府県に住んでい る 顧客のパー
セ ン テージ を計算 し 、 同関数に よ っ て送出 さ れ る すべての例外を捕捉
し ます。
1
ウィ ンド ウペイ ン タ 内に w_cust_pct が開いている こ と 、スク リ プト ビ ュ ー
の最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スに ddlb_state が表示 さ れている
こ と を確認 し ます。
2
2 番目の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スか ら 「losefocus ( ) returns
long [pbm_cbnkillfocus]」 を選択 し ます。
3
losefocus イ ベン ト ス ク リ プ ト では、ue_modified イ ベン ト を呼び出 し 、
そのイ ベン ト によ っ て送出 さ れる例外オブ ジ ェ ク ト を捕捉 し ます。コ ー ド
は以下のよ う にな り ます。
Try
this.EVENT ue_modified (this.text)
Catch (exc_bad_entry le_be)
messagebox ("exc_bad_entry から ", &
le_be.getmessage ())
End Try
return 1
PowerBuilder 入門
223
メ ソ ッ ド の呼び出 し と 例外の捕捉
4
ddlb_state コ ン ト ロールのス ク リ プ ト ビ ュ ー プ ロ ト タ イ プ ウ ィ ン ド ウ
の 2 番目の ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク スか ら 「constructor ( )
returns long [pbm_constructor]」 を選択 し ます。
5
Constructor イ ベン ト に以下のコ ード を 入力し て、 ド ロ ッ プダウン リ スト
ボ ッ ク ス コ ン ト ロールに設定 し ます。
int li_nrows, n
string ls_state
//customer テーブルに存在する
// すべての都道府県の数を取得する
SELECT count (distinct state) INTO :li_nrows
FROM customer;
//customer テーブル内のすべての都道府県を選択する
//SQL カ ー ソルを宣言する。 ただ し 、
// 同 じ 都道府県を含む 2 つ以上の行を重複 し て選択 し ない
DECLARE custstatecursor CURSOR FOR
SELECT state FROM customer
GROUP BY state HAVING count (state) =1
UNION
SELECT state FROM customer
GROUP BY state
HAVING count (state) >1;
OPEN custstatecursor ;
//customer テーブル内の各都道府県につ き 1 つのエ ン ト リ を
// コ ン ト ロールに設定する
FOR n=1 TO li_nrows
FETCH NEXT custstatecursor INTO :ls_state;
this.additem (ls_state)
NEXT
CLOSE custstatecursor ;
6
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プダウン リ ス ト か ら 「cb_percent」 を
選択 し ます。
2 番目の ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク ス に 「clicked ( ) returns
long [pbm_bnclicked]」 が表示 さ れている こ と を確認 し ます。
7
Clicked イ ベン ト ス ク リ プ ト に以下のコ ー ド を入力 し ます。
Decimal my_result
Double entry_1, entry_2
Int li_int, li_rtn
String sel_state
sel_state=ddlb_state.text
// 選択 し た都道府県に住む顧客の行数を取得 し 、
224
PowerBuilder
レ ッ ス ン 10
例外処理
//entry_1 変数に格納する。
// この数字を、 最初の
// ス タ テ ィ ッ ク コ ン ト ロールに表示する
SELECT count (*) INTO :entry_1 FROM customer
WHERE customer.state=:sel_state;
st_1.text=" 選択 し た都道府県に住む顧客数 : " + string
(entry_1)
//entry_2 変数に格納 さ れている
// 総顧客数を取得する。
// この数字を 2 番目のス タ テ ィ ッ ク コ ン ト ロールに表示する
SELECT count(*) INTO :entry_2 FROM customer;
st_2.text=" 総顧客数 : " &
+ string(entry_2)
//uf_percentage 関数を呼び出 し 、 例外を捕捉する
TRY
my_result = uf_percentage (entry_1, entry_2)
CATCH (exc_no_rows e_nr )
MessageBox("exc_no_rows から ", &
e_nr.getmessage())
CATCH (exc_low_number e_ln )
li_int=1
MessageBox("exc_low_number から ", &
e_ln.getmessage())
CATCH (dividebyzeroerror e_zero)
li_rtn = MessageBox(" 顧客な し ", &
" ア プ リ ケーシ ョ ン を終了 し ますか ?", Stopsign!,
YesNo!)
IF li_rtn=1 THEN
HALT
END IF
END TRY
// テキス ト ボ ッ ク ス内の メ ッ セージ を表示する。
// 選択 し た都道府県に住んでいる顧客が 1 人 し かいないのか、
//2 人以上いるのかによ っ て、
// メ ッ セージの内容を変え る
IF li_int=1 THEN
sle_result.text = sel_state + &
" に住んでいる顧客は 1 人です。 " + &
" 別の都道府県を選択 し て く だ さ い。 "
ELSE
sle_result.text = String (my_result) + &
" % の顧客が " + sel_state + &
" に住んでいます。 "
END IF
PowerBuilder 入門
225
ア プ リ ケーシ ョ ンの実行
ア プ リ ケーシ ョ ンの実行
現在の学習個所
既存のア プ リ ケーシ ョ ンへの新規のシー ト ウ ィ ン ド ウの追加
ユーザ定義の例外オブ ジ ェ ク ト の作成
新規のユーザ関数 と ユーザ イ ベン ト の作成
メ ソ ッ ド の呼び出 し と 例外の捕捉
> ア プ リ ケーシ ョ ンの実行
こ こ ま でで、 アプ リ ケーシ ョ ン を実行 し て、 選択 し た都道府県に住ん
でい る 顧客のパーセ ン テージ を計算す る 準備がで き ま し た。
こ こ では記述 し た ス ク リ プ ト の例外条件を テ ス ト し ますが、「ゼ ロ に よ
る 除算」 エ ラ ー条件を テ ス ト す る には、 デー タ ベー ス内の顧客数を故
意にゼ ロ に設定す る 必要があ り ます。 そのために、 シー ト ウ ィ ン ド ウ
にチ ェ ッ ク ボ ッ ク ス を追加 し 、 そのチ ェ ッ ク ボ ッ ク ス がオ ン の場合は
顧客数をゼ ロ に設定す る よ う に し ます。
こ こ では次の作業を行い ます。
•
新規のシー ト ウ ィ ン ド ウ のテ ス ト
•
ゼ ロ に よ る除算エ ラ ーのテ ス ト の追加
新規のシー ト ウ ィ ン ド ウのテ ス ト
1
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
変更内容を保存す る か ど う か を問い合わせ る メ ッ セージ ボ ッ ク ス
が表示 さ れた ら 、 [はい] を ク リ ッ ク し ます。
2
[ユーザ ID] ボ ッ ク スに 「dba」 と 入力 し ます。
[パスワー ド ] ボ ッ ク スに 「sql」 と 入力 し て、 [OK] ボ タ ン を ク リ ッ ク
し ます。
デー タ ベー ス と の接続が確立 さ れ、 ア プ リ ケーシ ョ ン の MDI フ
レーム が開 き ます。
3
226
メ ニ ュ ー バーか ら [フ ァ イル|レポー ト |都道府県に住んでいる顧客の
パーセ ン テージ] を選択 し ます。
PowerBuilder
レ ッ ス ン 10
例外処理
都道府県に住んでい る 顧客のパーセ ン テージ ウ ィ ン ド ウ が表示 さ
れ ます。
4
都道府県に住んでいる顧客のパーセン テージ シー ト ウ ィ ン ド ウの ド ロ ッ
プダウン リ ス ト ボ ッ ク スで 「AM」 を選択または入力 し て、 [パーセ ン テー
ジ] ボ タ ン を ク リ ッ ク し ます。
青 森 県 に 顧 客 が 1 人 し か い な い た め、 ユ ー ザ 定 義 の 例 外
exc_low_number が発生 し ます。 こ の例外が発行 し た メ ッ セージが、
[パーセ ン テージ]ボ タ ン の Clicked イ ベン ト ス ク リ プ ト の CATCH
句に定義 さ れた メ ッ セージ ボ ッ ク ス に表示 さ れ ます。
5
[OK] を ク リ ッ ク し て、 メ ッ セージ ボ ッ ク ス を閉 じ ます。
ス タ テ ィ ッ ク テ キ ス ト ボ ッ ク ス内のテ キ ス ト に、 青森県在住の顧
客の数 と デー タ ベース に登録 さ れてい る 顧客の総数が表示 さ れ ま
す。 編集可能な テ キ ス ト ボ ッ ク ス に、 パーセ ン テージが計算 さ れ
なか っ た ため、 別の都道府県を選択す る よ う に促すテ キ ス ト が表
示 さ れます。
PowerBuilder 入門
227
ア プ リ ケーシ ョ ンの実行
6
都道府県に住んでいる顧客のパーセ ン テージ シー ト ウ ィ ン ド ウの ド ロ ッ
プ ダウン リ ス ト ボ ッ ク スで 「KG」 を選択または入力 し て、 [パーセ ン テー
ジ] ボ タ ン を ク リ ッ ク し ます。
検索結果か ら 、 神奈川県在住の顧客は 15 人存在 し 、 デー タ ベース
に登録 さ れ て い る 全顧客 の 11.8% を 占め る こ と が わ か り ま す。
デー タ ベース を変更す る と パーセ ン テージが変わ り ます。
7
ド ロ ッ プ ダウン リ ス ト ボ ッ ク スに 「Ohio」 と 入力 し て、 [パーセ ン テー
ジ] ボ タ ン を ク リ ッ ク し ます。
[パーセ ン テージ] ボ タ ン を ク リ ッ ク し て ド ロ ッ プ ダ ウ ン リ ス ト
ボ ッ ク ス か ら フ ォーカ ス を移動す る と 、 LoseFocus イ ベン ト が発生
し ま す。 こ の イ ベ ン ト に よ り ue_modified イ ベ ン ト が起動 さ れ、
ユーザ定義の例外 exc_bad_entry が発生 し ます。 ド ロ ッ プダ ウ ン リ
ス ト ボ ッ ク ス で 2 文字の都道府県 コ ー ド を選択す る よ う に指示す
る 例外 メ ッ セージが表示 さ れ ます。
8
[OK] を ク リ ッ ク し てメ ッ セージ ボッ ク スを 閉じ 、 ド ロ ッ プダウン リ スト
ボ ッ ク スに 「US」 と 入力 し て、[パーセ ン テージ] ボ タ ン を ク リ ッ ク し ます。
US と い う 都道府県 コ ー ド を持つ行はデー タ ベー ス 内に見つか ら
ないため、 exc_no_rows 例外が発生 し ます。 該当す る行が返 さ れな
か っ た こ と と 、 その理由を示す メ ッ セージが表示 さ れ ま す。 よ り
堅牢な アプ リ ケーシ ョ ン に し たい場合は、 入力 さ れた テ キ ス ト を
都道府県 コ ー ド の リ ス ト と 照合 し て US が都道府県 コ ー ド ではな
い こ と を 知 ら せ る exc_bad_entry 例外 を 発生 さ せ る と よ いで し ょ
う。
9
228
[OK] を ク リ ッ ク し て、 メ ッ セージ ボ ッ ク ス を閉 じ ます。
PowerBuilder
レ ッ ス ン 10
例外処理
10 ウ ィ ン ド ウ シス テム ト レ イ にある EAS Demo DB を表すデー タ ベース
ア イ コ ン を右 ク リ ッ ク し 、 ポ ッ プ ア ッ プ メ ニ ュ ーの [終了] を選択 し ま
す。 警告 メ ッ セージ ボ ッ ク スが表示 さ れた ら [はい] を ク リ ッ ク し ます。
デー タ ベー ス ア イ コ ン は、 赤 と 黄色の SQL シ ン ボルです。 EAS
Demo DB デー タ ベース と の接続が切断 さ れます。
11
ド ロ ッ プダウン リ ス ト ボ ッ ク スで再度「AM」 を選択または入力 し て、[パー
セ ン テージ] ボ タ ン を ク リ ッ ク し ます。
デー タ ベース と の接続が切断 さ れてい る ため、 exc_no_rows 例外オ
ブジ ェ ク ト の メ ッ セージが表示 さ れ ます。 結果を取得 し 直すには、
アプ リ ケーシ ョ ン を終了 し て再起動す る 必要が あ り ま す。 ア プ リ
ケーシ ョ ン を再起動す る と 、 実行時環境でデー タ ベー ス と の接続
が再確立 さ れます。
12 [OK] を ク リ ッ ク し て メ ッ セージボ ッ ク ス を閉 じ 、 ア プ リ ケーシ ョ ン メ
ニ ュ ーか ら [フ ァ イル|終了] を選択 し て開発環境に戻 り ます。
開発環境ではデー タ ベー ス 接続が オープ ン さ れ た ま ま の状態に
な っ てい る こ と があ り ます。 その場合は、 デー タ ベース ペ イ ン タ
を使用 し てデー タ ベー ス と の接続を切断 し 、 デザ イ ン時環境で再
接続 し ます。
ゼロに よ る除算エ ラ ーのテ ス ト の追加
こ こ では、w_cust_pct ウ ィ ン ド ウ にチ ェ ッ ク ボ ッ ク ス を追加 し ます。そ
し て、 こ のチ ェ ッ ク ボ ッ ク ス がオ ン の と き 、 ゼ ロ に よ る 除算エ ラ ーを
強制的に発生 さ せ る コ ー ド を記述 し ます。 こ のテ ス ト には イ ン ス タ ン
ス化 さ れたチ ェ ッ ク ボ ッ ク ス オブジ ェ ク ト が必要なので、 新 し い コ ー
ド を、 Null オブジ ェ ク ト のエ ラ ーをチ ェ ッ ク す る TRY-CATCH 文で囲
みます。
PowerBuilder 入門
1
レ イ アウ ト ビ ュ ーで w_pct_cust ウ ィ ン ド ウが開いている こ と を確認 し
ます。
ウ ィ ン ド ウペ イ ン タ の メ ニ ュ ーで [挿入| コ ン ト ロール|チ ェ ッ ク ボ ッ ク
ス] を選択 し ます。
2
[パーセ ン テージ] コ マ ン ド ボ タ ンの右側を ク リ ッ ク し ます。
3
プ ロパテ ィ ビ ュ ーの [名前] ボ ッ ク スに、 「cbx_zero」 と 入力 し ます。
[テキス ト ] ボ ッ ク スに、 「ゼロ によ る除算のテス ト 」 と 入力 し ます。
229
ア プ リ ケーシ ョ ンの実行
4
[関数 リ ス ト ] タ ブ を ク リ ッ ク し ます。
uf_percentage 関数を ダ ブル ク リ ッ ク し ます。
5
CHOOSE CASE 文の上に以下の コ ー ド を入力 し ます
// 分母にゼロ を設定 し てエ ラ ー条件を テス ト する。
// 分子は何で も よいが、 ユーザ定義の例外が発生 し ない よ う にする
TRY
IF cbx_zero.checked=TRUE THEN
ai_totalcust=0
ai_custbystate=2
END IF
CATCH (nullobjecterror e_no)
MessageBox ("Null オブ ジ ェ ク ト ", " 不正なテ ス ト です。
")
END TRY
Null オブ ジ ェ ク ト エ ラ ーのテス ト
こ の レ ッ ス ン を終え た ら 、DESTROY cbx_zero と い う 1 行を TRY 文
の上に追加 し て、 Null オブジ ェ ク ト エ ラ ーのテ ス ト がで き ます。
6
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
変更内容を保存す る か ど う か を問い合わせ る メ ッ セージ ボ ッ ク ス
が表示 さ れた ら 、 [はい] を ク リ ッ ク し ます。
7
[ユーザ ID] ボ ッ ク スに 「dba」 と 入力 し ます。
[パスワー ド ] ボ ッ ク スに 「sql」 と 入力 し て、 [OK] ボ タ ン を ク リ ッ ク
し ます。
デー タ ベー ス と の接続が確立 さ れ、 ア プ リ ケーシ ョ ン の MDI フ
レーム が開 き ます。
8
230
メ ニ ュ ー バーか ら [フ ァ イル|レポー ト |都道府県に住んでいる顧客の
パーセ ン テージ] を選択 し ます。
ド ロ ッ プ ダウン リ ス ト ボ ッ ク スか ら都道府県 コ ー ド を選択 し ます。
PowerBuilder
レ ッ ス ン 10
9
例外処理
[ゼロによ る除算のテス ト ] チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。
10 [パーセ ン テージ] ボ タ ン を ク リ ッ ク し ます。
パーセ ン テージの計算中にゼ ロ に よ る 除算エ ラ ーが発生 し 、 [パー
セ ン テ ー ジ] ボ タ ン の Clicked イ ベ ン ト に よ っ て 捕捉 さ れ ま す。
CATCH 句に記述 し た こ のエ ラ ーの メ ッ セージ ボ ッ ク ス が表示 さ
れ ます。
11 [いいえ] を ク リ ッ ク し て ア プ リ ケーシ ョ ンの実行を継続 し ます。
別の都道府県 コ ー ド を選択 し チ ェ ッ ク ボ ッ ク ス を オ フ に し て ア プ リ ケー
シ ョ ンのテス ト を続行 し ます。
チ ェ ッ ク ボ ッ ク ス がオ ン の ま ま [パーセ ン テージ] ボ タ ン を再度
ク リ ッ ク し 、 エ ラ ー メ ッ セージボ ッ ク ス で [はい] を選択す る と 、
アプ リ ケーシ ョ ン が閉 じ 、 開発環境に戻 り ます。
12 テ ス ト を終了 し た ら ア プ リ ケーシ ョ ン を閉 じ ます。
PowerBuilder 入門
231
ア プ リ ケーシ ョ ンの実行
232
PowerBuilder
レ ッ ス ン 11
ア プ リ ケーシ ョ ン配布の準備
こ の レ ッ ス ン では、 アプ リ ケーシ ョ ン の実行フ ァ イ ル (EXE フ ァ
イ ル) を作成 し ま す。 作成 し た実行フ ァ イ ルは、 エ ン ド ユーザが
Windows のほかのアプ リ ケーシ ョ ン (た と えば、Microsoft Excel や
Word for Windows な ど) と 同 じ よ う に実行で き ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
プロ ジ ェ ク ト オブジ ェ ク ト の作成
•
実行フ ァ イ ルの作成
•
シ ョ ート カ ッ ト の作成
•
実行フ ァ イ ルのテ ス ト
所要時間
約 10 分
PowerBuilder 入門
233
プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成
プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成
現在の学習個所
> プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成
実行フ ァ イ ルの作成
シ ョ ート カ ッ ト の作成
実行フ ァ イ ルのテ ス ト
こ の ス テ ッ プでは、 PBTUTOR プ ロ ジ ェ ク ト オブジ ェ ク ト を作成 し ま
す。 プ ロ ジ ェ ク ト オブジ ェ ク ト は、 アプ リ ケーシ ョ ンの実行フ ァ イ ル
を作成す る のに使用で き ます。
マシ ン コ ー ド について PowerBuilder Enterprise 版 を 実行 し て い る 場合
は、 プ ロ ジ ェ ク ト 実行フ ァ イ ルの コ ン パ イ ル方式 と し て Pcode (疑似
コ ー ド ) と マシ ン コ ー ド のいずれか を選択で き ます。 ただ し 、 チ ュ ー
ト リ アル アプ リ ケーシ ョ ン には Try-Catch 文が含 ま れてい る ため、 コ
ンパ イ ル方式 と し てマシ ン コ ー ド を選択す る こ と はで き ません。
アプ リ ケーシ ョ ン を ユーザに配布す る と き は、 ループ、 浮動小数点 ま
たは整数演算、 関数呼び出 し な ど の計算で実行速度を上げ る ためにマ
シ ン コー ド を使用 し て も よ いで し ょ う 。 し か し 、 アプ リ ケーシ ョ ンの
開発の際は、 通常は Pcode を使用 し た方が高速に コ ー ド を生成で き ま
す。
ま た、 ア プ リ ケーシ ョ ン に動的 ラ イ ブ ラ リ を
作成す る こ と も で き ま す。 動的 ラ イ ブ ラ リ はアプ リ ケーシ ョ ン で使用
す る オブジ ェ ク ト を格納す る のに使用で き ま す。 動的 ラ イ ブ ラ リ を使
用す る こ と に よ り 、 アプ リ ケーシ ョ ン を管理 し やすい よ う に小 さ なユ
ニ ッ ト に分割 し て、 実行フ ァ イ ルのサ イ ズ を小 さ く す る こ と がで き ま
す。
動的ラ イ ブ ラ リ について
こ のチ ュ ー ト リ アルで作成 し てい る アプ リ ケーシ ョ ン の よ う な小 さ い
アプ リ ケーシ ョ ン の場合は、 動的 ラ イ ブ ラ リ を使用す る 必要はあ り ま
せん。
234
1
パワーバーの [新規作成] ボ タ ン を ク リ ッ ク し ます。
新規作成 ダ イ ア ログボ ッ ク スの [プ ロ ジ ェ ク ト ] タ ブ を ク リ ッ ク し ます。
2
[ア プ リ ケーシ ョ ン ウ ィ ザー ド ] ア イ コ ン を選択 し て [OK] を ク リ ッ ク
し ます。
PowerBuilder
レ ッ ス ン 11
ア プ リ ケーシ ョ ン配布の準備
プ ロ ジ ェ ク ト ペ イ ン タ の使い方
[プ ロ ジ ェ ク ト ] ページで、 [アプ リ ケーシ ョ ン ウ ィ ザー ド ] ア イ
コ ン ではな く [ア プ リ ケーシ ョ ン] ア イ コ ン を ク リ ッ ク し た場合
は、 プ ロ ジ ェ ク ト ペ イ ン タ が開 き ます。 プ ロ ジ ェ ク ト ペ イ ン タ で
も ウ ィ ザー ド の場合 と 同様に値を選択で き ま すが、 ウ ィ ザー ド の
場合は、 ウ ィ ザー ド か ら の指示に従っ て必要な情報を入力す る こ
と がで き ます。
3
[次へ] を ク リ ッ ク し ます。
[格納先 ラ イ ブ ラ リ の指定] ページが表示 さ れます。
4
まだ選択 し ていない場合は、 [ア プ リ ケーシ ョ ン ラ イ ブ ラ リ ] リ ス ト ボ ッ
ク スで 「pbtutor.pbl」 を選択 し ます。
[構築オプ シ ョ ンの指定] ページが表示 さ れる ま で [次へ] を ク リ ッ ク し
ます。
以下のデフ ォ ル ト 値が選択 さ れたプ ロ ジ ェ ク ト が生成 さ れます。
ウ ィ ザー ド のプ ロパテ ィ
プロジェ ク ト 名
デ フ ォル ト 値
p_pbtutor_exe
pbtutor.exe
実行可能フ ァ イ ル名
リ ソ ース フ ァ イ ル (オプシ ョ ン) な し
5
[構築オプ シ ョ ンの指定] で [イ ン ク リ メ ン タ ル構築] を選択 し ます。
[バージ ョ ン情報の指定] ページが表示 さ れる ま で [次へ] を ク リ ッ ク し
ます。
以下のデフ ォ ル ト 値が選択 さ れたプ ロ ジ ェ ク ト が生成 さ れます。
ウ ィ ザー ド のプ ロパテ ィ
マシ ン コ ー ド の生成
動的 ラ イ ブ ラ リ の作成
6
デ フ ォル ト 値
いいえ、 マシ ン コ ー ド で生成 し ま
せん
チェ ッ ク な し
必要であれば、 独自のバージ ョ ン情報を [バージ ョ ン情報の設定] ページ
に入力 し ます。
こ のページの情報を変更 し ない場合、 実行フ ァ イ ルのプ ロ パテ ィ
を Windows エ ク ス プ ロ ー ラ で参照 し た と き にデフ ォ ル ト 値が表示
さ れ ます。
PowerBuilder 入門
235
プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成
7
[次へ] を ク リ ッ ク し ます。
[ア プ リ ケーシ ョ ンの作成準備完了] ページの情報を確認 し ます。
[完了] ボ タ ン を ク リ ッ ク し ます。
アプ リ ケーシ ョ ン のプ ロ ジ ェ ク ト オブジ ェ ク ト が作成 さ れ、 プ ロ
ジ ェ ク ト ペ イ ン タ の ワー ク スペース に表示 さ れます。
プ ロ ジ ェ ク ト を定義 し 終え た ら 、 ア プ リ ケーシ ョ ン の実行フ ァ イ
ルは簡単に作成で き ま す。 プ ロ ジ ェ ク ト を使用す る と 、 頻繁に再
構築す る 動的 ラ イ ブ ラ リ を含むアプ リ ケーシ ョ ン の場合に作業時
間を短縮で き ま す。 イ ン ク リ メ ン タ ル構築を選択す る と 、 い く つ
か変更を加え た場合に、 変更 さ れた フ ァ イ ルのみ、 ま たは変更 さ
れた フ ァ イ ルに依存す る フ ァ イ ルのみを再構築す る こ と で、 すば
や く プ ロ ジ ェ ク ト を再構築で き ます。
236
PowerBuilder
レ ッ ス ン 11
ア プ リ ケーシ ョ ン配布の準備
実行フ ァ イルの作成
現在の学習個所
プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成
> 実行フ ァ イ ルの作成
シ ョ ート カ ッ ト の作成
実行フ ァ イ ルのテ スト
こ の ス テ ッ プでは、 ア プ リ ケーシ ョ ン の実行 フ ァ イ ル を 作成 し ま す。
作成す る 実行フ ァ イ ルには、 アプ リ ケーシ ョ ン のすべてのオブジ ェ ク
ト の定義が格納 さ れ ま す。 こ のチ ュ ー ト リ アル ア プ リ ケーシ ョ ン で
は、 プ ロ ジ ェ ク ト に独立 し た リ ソ ー ス フ ァ イ ル を含めなか っ たので、
ロ グ イ ン ウ ィ ン ド ウ で使用す る ビ ッ ト マ ッ プ フ ァ イ ルが含ま れます。
プ ロ ジ ェ ク ト ペ イ ン タ で も 実行フ ァ イ ル を作成で き ま すが、 通常は、
一度プ ロ ジ ェ ク ト の定義を終え た ら 、 プ ロ ジ ェ ク ト ペ イ ン タ を再度開
く 必要はあ り ません。
シ ス テ ム ツ リ ーの ワー ク スペースお よ び タ ーゲ ッ ト では、 ポ ッ プア ッ
プ メ ニ ュー項目に [ イ ン ク リ メ ン タ ル構築]、 [フル構築]、 お よ び [配
布] があ り 、 こ れ ら を使用す る と 、 タ ーゲ ッ ト 内ま たは ワ ー ク ス ペー
ス全体の中のプ ロ ジ ェ ク ト の一部ま たは全部を構築お よ び配布で き ま
す。 [ イ ン ク リ メ ン タ ル構築] お よ び [フル構築] を選択す る と 、 コ ー
ド が コ ンパ イ ル さ れます。 [配布] を選択す る と 、 コー ド が コ ンパ イ ル
さ れ、 こ のチ ュ ー ト リ アルで構築 し た よ う な アプ リ ケーシ ョ ン の場合
は、 実行フ ァ イ ル と オプシ ョ ン の動的 ラ イ ブ ラ リ が作成 さ れ ます。 そ
のほかのプ ロ ジ ェ ク ト (サーバ コ ン ポーネ ン ト プ ロ ジ ェ ク ト な ど) の
場合は、 [配布] を 選択す る と 、 サーバへの コ ン ポーネ ン ト お よ びサ
ポー ト フ ァ イ ルの配布 も 行われます。
こ の レ ッ ス ン では、 プ ロ パ テ ィ シー ト につい て説明 し ま す。 プ ロ パ
テ ィ シー ト では、 構築 と 配布のオプ シ ョ ン を 指定 し 、 そ し てパ ワ ー
バーか ら 実行フ ァ イ ルを作成 し ます。
PowerBuilder 入門
1
プ ロ ジ ェ ク ト ペ イ ン タ を閉 じ ます。
変更内容を保存するかど う かを確認する メ ッ セージが表示 さ れた ら 、 [は
い] を ク リ ッ ク し ます。
2
シ ス テム ツ リ ーで pbtutor タ ーゲ ッ ト を右ク リ ッ ク し ます。
[プ ロパテ ィ ] を選択 し 、 [配布] タ ブ を選択 し ます。
237
実行 フ ァ イルの作成
こ のページには、 こ の タ ーゲ ッ ト 内のすべてのプ ロ ジ ェ ク ト (現
在は 1 つだけ) が表示 さ れ ま す。 タ ーゲ ッ ト 内に複数のプ ロ ジ ェ
ク ト があ る 場合は、 実行 さ れ る 順序の変更、 お よ び構築す る プ ロ
ジ ェ ク ト の選択がで き ます。
3
p_pbtutor_exe を チ ェ ッ ク し た ま まで [キ ャ ン セル] ボ タ ン を ク リ ッ ク
し ます。
シ ス テム ツ リ ーで MyWorkspace を右 ク リ ッ ク し ます。
[プ ロパテ ィ ] を選択 し 、 [配布プ レ ビ ュ ー] タ ブ を選択 し ます。
[配布プ レ ビ ュー] タ ブページには、 ワー ク スペース内のすべての
タ ーゲ ッ ト 、 お よ び配布対象 と し て選択 さ れた各 タ ーゲ ッ ト 内の
プ ロ ジ ェ ク ト が、 配布 さ れ る 順序で表示 さ れ ま す。 こ のページで
は何 も 変更で き ま せん。 ワ ー ク ス ペー ス の配布オプシ ョ ン を希望
どお り に設定 し た こ と を確認す る ためのページです。 こ のページ
に表示 さ れ る すべてのプ ロ ジ ェ ク ト は、 パ ワ ーバーの [配布] ボ
タ ン を ク リ ッ ク す る と 配布 さ れます。
こ の ワ ー ク ス ペー ス には タ ーゲ ッ ト と プ ロ ジ ェ ク ト がそれぞれ 1
つあ る だけなので、 [配布] ボ タ ン を使用 し て実行フ ァ イ ルを作成
で き ます。
4
[キ ャ ン セル] ボ タ ン を ク リ ッ ク し て、 プ ロパテ ィ シー ト を閉 じ ます。
パワーバーの [配布] ボ タ ン を ク リ ッ ク し ます。
実行フ ァ イ ルの作成には多少時間がかか り ま す。 実行フ ァ イ ルを
作成 し てい る 間は、 画面下部の出力 ウ ィ ン ド ウ で処理の状況を確
認す る こ と がで き ます。
配布のプ ロ セ ス を中止 し たい場合は、 パ ワ ーバーの [中止] ボ タ
ン を ク リ ッ ク し ま す。 配布が完了す る と 、 出力 ウ ィ ン ド ウ に 「終
了 ワー ク スペース の配布 MyWorkspace」 と 表示 さ れ ます。
238
PowerBuilder
レ ッ ス ン 11
ア プ リ ケーシ ョ ン配布の準備
シ ョ ー ト カ ッ ト の作成
現在の学習個所
プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成
実行フ ァ イ ルの作成
> シ ョ ート カ ッ ト の作成
実行フ ァ イ ルのテ スト
こ の ス テ ッ プでは、 実行フ ァ イ ルのシ ョ ー ト カ ッ ト を作成 し ます。 ア
イ コ ンは、 実行フ ァ イ ルを開 く ためのシ ョ ー ト カ ッ ト と し て動作 し ま
す。 シ ョ ー ト カ ッ ト は、 直接デス ク ト ッ プへ、 ま たは選択 し たプ ロ グ
ラ ム グループに追加で き ます。
1
[最小化] ボ タ ン を ク リ ッ ク し て、 PowerBuilder を最小化 し ます。
PowerBuilder が最小化 さ れ、 タ ス ク バーにア イ コ ン表示 さ れ ます。
2
デス ク ト ッ プの空白領域でマウスの右ボ タ ン を ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーから [新規作成|シ ョ ー ト カ ッ ト ] を選択 し ます。
シ ョ ー ト カ ッ ト の作成 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
3
[ コ マ ン ド ラ イ ン] テキス ト ボ ッ ク スに、 EXE フ ァ イルへのパス を ド ラ イ
ブ名か ら入力 し ます。
た と えば、PowerBuilder の イ ン ス ト ール先がデフ ォ ル ト のフ ォ ルダ
の場合は、 次の よ う に入力 し ます。
C:¥Program Files¥Sybase¥PowerBuilder 9.0¥Tutorial
¥pbtutor.exe
ま た、 [参照] ボ タ ン を ク リ ッ ク し て pbtutor.exe を探す こ と も で き
ます。
4
[次へ] を ク リ ッ ク し ます。
5
[シ ョ ー ト カ ッ ト の名前を指定 し て く だ さ い] テキス ト ボ ッ ク スに
「PowerCap 営業支援シ ステム」 と 入力 し ます。
6
[完了] ボ タ ン を ク リ ッ ク し ます。
デ ス ク ト ッ プ上に、 シ ョ ー ト カ ッ ト のア イ コ ン と その名前が表示
さ れ ます。
PowerBuilder 入門
239
シ ョ ー ト カ ッ ト の作成
アプ リ ケーシ ョ ン を実行で き る よ う に、 そのシ ョ ー ト カ ッ ト のプ
ロ パテ ィ を修正 し ま す。 ま た、 ア イ コ ン を変更す る こ と も で き ま
す。
7
デス ク ト ッ プ上の [PowerCap 営業支援シ ス テム] ア イ コ ン を右 ク リ ッ
ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を選択 し ます。
デ ス ク ト ッ プ シ ョ ー ト カ ッ ト のプ ロ パテ ィ シー ト が表示 さ れ ま
す。
8
[シ ョ ー ト カ ッ ト ] タ ブ を選択 し ます。
[作業 フ ォ ルダ] ボ ッ ク スに Powersoft の共有モ ジ ュ ール フ ォ ルダへの
パス を入力 し ます。
[OK] を ク リ ッ ク し ます。
共有モ ジ ュ ールの格納場所について
PowerBuilder を イ ン ス ト ールす る と 、 各 DLL フ ァ イ ルが共有デ ィ
レ ク ト リ に イ ン ス ト ール さ れ ま す。 デフ ォ ル ト の イ ン ス ト ール先
は 「C:¥Program Files¥Sybase¥Shared¥PowerBuilder」 です。
ユーザが実行フ ァ イ ル を ダブル ク リ ッ ク し て ア プ リ ケーシ ョ ン を
実行で き る よ う にす る には、 シ ス テ ム環境パ ス に共有デ ィ レ ク ト
リ の場所を含め る必要があ り ます。
240
PowerBuilder
レ ッ ス ン 11
ア プ リ ケーシ ョ ン配布の準備
実行フ ァ イルのテ ス ト
現在の学習個所
プ ロ ジ ェ ク ト オブ ジ ェ ク ト の作成
実行フ ァ イ ルの作成
シ ョ ート カ ッ ト の作成
> 実行フ ァ イ ルのテ スト
こ の ス テ ッ プでは、 新 し く 作成 し た実行フ ァ イ ルを テ ス ト し ます。
1
pbtutor.ini フ ァ イルが実行フ ァ イル pbtutor.exe と 同 じ デ ィ レ ク ト リ に
格納 さ れている こ と を確認 し ます。
2
チ ュ ー ト リ アル ア プ リ ケーシ ョ ンのア イ コ ン を ダ ブルク リ ッ ク し ます。
アプ リ ケーシ ョ ン の実行が開始 さ れ ます。
3
ア プ リ ケーシ ョ ン を テス ト し ます。
顧客情報に加えた変更に注意 し て く だ さ い。
4
ア プ リ ケーシ ョ ンのテス ト を終えた ら、 [フ ァ イル|終了] を選択 し ます。
次のス テ ッ プについて
お疲れ さ ま で し た。 こ れでチ ュ ー ト リ アルの第 1 部 と 第 2 部が終了 し
ま し た。 こ のチ ュ ー ト リ アルでは PowerBuilder でのアプ リ ケーシ ョ ン
構築の基本的な方法を学習 し ま し た。 PowerBuilder Enterprise 版を使用
す る 開発者の場合は、 Web タ ーゲ ッ ト の レ ッ ス ン に進む こ と がで き ま
す。
こ のマ ニ ュ アルの冒頭の 「本書について」 には、 PowerBuilder の各マ
ニ ュ アルについての説明が記載 さ れてい ま す。 さ ら に高度な開発技術
を学習す る には、 以下のマニ ュ アルに進んで く だ さ い。
『ユーザーズ ガ イ ド 』
『アプ リ ケーシ ョ ン テ ク ニ ッ ク 』
『デー タ ウ ィ ン ド ウ プ ロ グ ラ マーズ ガ イ ド 』
PowerBuilder 入門
241
次のス テ ッ プについて
242
PowerBuilder
第
3
部
Web ア プ リ ケーシ ョ ンの構築
第 3 部は、 PowerDynamo Web タ ーゲ ッ ト の使用方法を
示 し たチ ュ ー ト リ アルです。簡単な Web ア プ リ ケーシ ョ
ンの作成方法を手順を追 っ て説明 し ます。
レ ッ ス ン 1 2
Web ページの作成
PowerBuilder の Web タ ーゲ ッ ト を使用す る と 、 Web ページ、 ス ク
リ プ ト 、 マルチ メ デ ィ ア、 画像、 お よ び さ ま ざ ま な ソ ー ス のデー
タ への リ ン ク を格納す る ワー ク スペース内で Web サ イ ト を開発で
き ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
PowerDynamo Web サイ ト の作成
•
基本 Web ページ の作成と 修正
•
ページ ナビ ゲーシ ョ ン の追加
•
検証と リ ダ イ レ ク ト を 行う ロ グ イ ン ページの作成
•
ス タ ート ページの指定
•
Web サイ ト の配布と 実行
所要時間
約 40 分
こ のチ ュ ー ト リ アルを開始する前に
イ ン ス ト ールが必要な も の
Web タ ーゲ ッ ト チ ュー ト リ アルでは、 ロ ーカル マシ ン に以下の ソ
フ ト ウ ェ アが イ ン ス ト ール さ れてい る 必要があ り ます。
•
EAServer 4.2 以降
•
PowerDynamo 3.6 以降
•
Internet Explorer 6.0 以降
Jaguar Manager でサーバの設定を変更すれば、 PowerDynamo サー
バ を EAServer に 組み込 ん で 実行す る こ と も で き ま す が、 こ の
チ ュ ー ト リ アルでは、 PowerDynamo Personal Web Server を独立 し
たプ ロ セ ス と し て実行 し ます。
PowerBuilder 入門
245
こ のチ ュ ー ト リ アルを開始する前に
こ のチ ュ ー ト リ アルに
必要な フ ァ イルの入手
Web タ ーゲ ッ ト チ ュ ー ト リ アルでは、 第 2 部で作成 し た い く つかの
フ ァ イ ルを使用す る 必要があ り ます。
第 2 部を最近学習 し た場合 必要な フ ァ イ ルはすでに用意で き てい る は
ず で す。 開 始 す る 前 に、 myworkspace.pbw、 pbtutor.pbt、 pbtutor.pbl、
tshirtw.jpg、 tutor_pb.pbl、 お よ び Tutorial.ico フ ァ イ ルが Tutorial デ ィ レ
ク ト リ にあ る こ と を確認 し て く だ さ い。
第 3 部だけを学習する場合 必要な フ ァ イ ルは Solutions デ ィ レ ク ト リ に
入っ てい ま す。 開始す る 前に、 myworkspace.pbw、 pbtutor.pbt、 お よ び
pbtutor.pbl を ご自分の Tutorial デ ィ レ ク ト リ に コ ピー し て く だ さ い。
246
PowerBuilder
レ ッ ス ン 12
Web ページの作成
PowerDynamo Web サイ ト の作成
現在の学習個所
> PowerDynamo Web サイ ト の作成
基本 Web ページ の作成と 修正
ページ ナビ ゲーシ ョ ン の追加
検証と リ ダイ レ ク ト を 行う ロ グイ ン ページ の作成
スタ ート ページ の指定
Web サイ ト の配布と 実行
PowerDynamo Web サ イ ト は、 HTML ド キ ュ メ ン ト やデー タ を作成、 格
納、 管理、 お よ びア ク セ ス で き る フ ァ イ ル ま たはデー タ ベース リ ポジ
ト リ です。 PowerDynamo を使用す る と 、 Web ページにサーバ サ イ ド の
命令を埋め込む こ と がで き ます。 Web ク ラ イ ア ン ト が、 そのページ を
表示 し た り そのページ と 対話 し た り す る と 、こ の命令が処理 さ れます。
PowerDynamo は、動的な Web コ ン テ ン ツ を生成す る アプ リ ケーシ ョ ン
サーバです。 デー タ ベース か ら 情報を検索 し た り 、 検索結果を見やす
い形式に整え て Web サーバに返 し た り し ます。 ま た、 開発時に使用す
る Personal Web サーバ も 提供 し ます。
PowerDynamo に配布す る と 、配布構成に よ っ て HTML ページが処理 さ
れ、 ア プ リ ケーシ ョ ン サーバが使用す る 書式 と の互換性が と ら れ ま
す。 HTML 要素の リ ン ク が更新 さ れ、 実際の配布フ ァ イ ル構造が反映
さ れ ます。 こ の処理には、 以下の も のが含ま れます。
•
サーバ ス ク リ プ ト 内で使用 さ れ る Web タ ーゲ ッ ト オブジ ェ ク ト
と 、アプ リ ケーシ ョ ン サーバ上のオブジ ェ ク ト お よ び メ ソ ッ ド (オ
ブジ ェ ク ト モデル) と のマ ッ ピ ン グ
•
HTML エデ ィ タ 内のサーバ ス ク リ プ ト 用の区切 り 記号 (<% と
%>) を PowerDynamo ス ク リ プ ト 用の区切 り 記号 (<!--SCRIPT と
-->) と 置換
1
PowerBuilder で [ フ ァ イル|ワー ク スペース を開 く ] を選択 し 、 Tutorial
フ ォルダに移動 し ます。
MyWorkspace.pbw を選択 し 、 [開 く ] を ク リ ッ ク し ます。
最初のチ ュ ー ト リ アルを最近学習 し た場合は、 こ の ワ ー ク ス ペー
ス がすでに開いてい る 可能性があ り ま す。 最初のチ ュ ー ト リ アル
を最近学習 し ていないため、 MyWorkspace.pbw が見つか ら ない場
合は、27 ページの 「チ ュー ト リ アルのセ ッ ト ア ッ プ」 の手順に従っ
て く だ さ い。
PowerBuilder 入門
247
PowerDynamo Web サイ ト の作成
2
パワーバーの [新規作成] ボ タ ン を ク リ ッ ク し ます。
新規作成 ダ イ ア ログボ ッ ク スの [ タ ーゲ ッ ト ] タ ブ を ク リ ッ ク し 、
[PowerDynamo Web サイ ト ] を選択 し ます。
[OK] を ク リ ッ ク し ます。
PowerDynamo Web サ イ ト ウ ィ ザー ド の紹介ページ が表示 さ れ ま
す。
3
[次へ] を ク リ ッ ク し ます。
[ タ ーゲ ッ ト の場所 と フ ォ ルダの選択 ウ ィ ザー ド ] ページが表示 さ
れ ます。 Web タ ーゲ ッ ト のデフ ォ ル ト 名は Target1 です。
4
Target1.pbt のかわ り に 「Customer.pbt」 と 入力 し ます。
5
[HTTP サーバ情報の指定] ページが表示 さ れる まで [次へ] を ク リ ッ ク
し ます。
以下の項目についてデフ ォ ル ト の設定を その ま ま使用 し ます。
6
ウ ィ ザー ド オプ シ ョ ン
[URL 接頭辞マ ッ ピ ン グ]
デ フ ォル ト
/Customer
[ODBC デー タ ソ ース名]
[新 し い ロ ーカル デー タ ベース フ ァ イ
ル名]
[ユーザ ID] お よ び [パ ス ワ ー ド ]
Customer
Customer.db
[Web サ イ ト へ PowerDynamo ヘルプ
フ ァ イ ル と サンプルを ロ ー ド す る ]
チェ ッ ク な し
[配布構成の名前] お よ び [説明]
CustomerDeployConfiguration1
配布構成
dba と ***
[HTTP サーバ情報の指定] ページの [HTTP サーバ名] に 「localhost」
と 入力 し ます。
デ フ ォル ト ポー ト 番号の 80 を使用 し ます。
localhost と い う 指定は、 作成す る Web サ イ ト を ロ ーカル マシ ン上
に置 く こ と を意味 し ます。
統合サーバの使用
EAServer に統合 さ れてい る PowerDynamo Web サーバ を使用す る
場合は、HTTP リ ス ナ用に HTTP サーバ名 と ポー ト 番号を選択す る
必要があ り ます。デフ ォ ル ト では、ご使用のマシ ン名が HTTP サー
バ名にな り 、 ポー ト 番号は 8080 にな り ます。
248
PowerBuilder
レ ッ ス ン 12
7
Web ページの作成
[PowerDynamo Web サイ ト の作成準備完了] ページが表示 さ れる ま で
[次へ] を ク リ ッ ク し ます。
以下の項目についてデフ ォ ル ト の設定を その ま ま使用 し ます。
ウ ィ ザー ド
オプ シ ョ ン
[オブジ ェ ク ト
モデル]
[デバ ッ グ を有効
にす る ]
[配布対象]
[再構築]
[ コ ピー フ ォ ルダ]
デ フ ォル ト
[デフ ォル ト のオブジ ェ ク ト モデルを使用す る ]
チェ ッ ク な し
[すべて配布ま たは、 配布 し ない]
[Incremental]
Program Files¥Sybase¥PowerBuilder 9.0¥Tutorial
¥Customer¥CustomerDeployConfiguration1
デフ ォ ル ト の Web タ ーゲ ッ ト オブジ ェ ク ト モデルを使用す る と 、
1 つの ソ ー ス か ら 複数のサーバ プ ラ ッ ト フ ォ ー ム に配布で き る
サーバ サ イ ド ロ ジ ッ ク を記述で き ま す。 配布エ ン ジ ン に よ っ て、
こ れ ら の タ ーゲ ッ ト プ ラ ッ ト フ ォーム に適 し た構文に ソ ース が変
換 さ れ ます。
8
[PowerDynamo Web サイ ト の作成準備完了] ページの選択内容を確認
し ます。
[完了] を ク リ ッ ク し て選択内容を受け入れます。
Customer タ ー ゲ ッ ト 、 フ ァ イ ル を 格納す る デ ィ レ ク ト リ 構造、
Adaptive Server Anywhere デー タ ベー ス を 使用す る PowerDynamo
Web サ イ ト 、 お よ び配布構成が作成 さ れます。 シ ス テ ム ツ リ ーで
MyWorkspace を 展開する と 、新規の Web タ ーゲッ ト である Customer
がその下に置かれてい る こ と がわか り ます。
PowerBuilder 入門
249
基本 Web ページの作成 と 修正
基本 Web ページの作成 と 修正
現在の学習個所
PowerDynamo Web サイ ト の作成
> 基本 Web ページ の作成と 修正
ページ ナビ ゲーシ ョ ン の追加
検証と リ ダイ レ ク ト を 行う ロ グイ ン ページ の作成
ス タ ート ページ の指定
Web サイ ト の配布と 実行
こ の レ ッ ス ン では、 ウ ェ ルカ ム ページ を作成 し 、 そのページのル ッ ク
ア ン ド フ ィ ールを修正 し ます。 すべての機能が こ の時点で追加 さ れ る
わけではあ り ません。 実際に使用で き る Web サ イ ト を非常に簡単に作
成で き る こ と を示す こ と が目的です。
•
4GL を 用いた Web ページの作成
•
フ ォ ン ト の変更
•
グ ラ フ ィ ッ ク の追加
•
グ ラ フ ィ ッ ク への絶対位置の追加
4GL を用いた Web ページの作成
こ の レ ッ ス ン では、 Welcome.htm ページ を作成 し ま す。 こ のページか
ら 、 こ のチ ュ ー ト リ アルで作成す る その他のページにア ク セ ス で き ま
す。 4GL Web/JSP ページ ウ ィ ザー ド を使用 し て、 こ の ウ ェ ルカ ム ペー
ジ を作成 し ます。 4GL 機能を使用す る と 、 ユーザ主導の動的な コ ン テ
ン ツ を持つページ を簡単に開発で き ます。
4GL Web ページは、 拡張 Web タ ーゲ ッ ト オブジ ェ ク ト モデルが組み
込ま れた高度な Web ページです。 こ の拡張モデルに よ っ て、(Web ペー
ジ を変更せずに Web ページの コ ン テ ン ツ の一部を変更す る ) 動的 Web
ページのテ ン プ レー ト ( ソ ー ス) フ ァ イ ル を作成で き ま す。 4GL Web
ページは、 オブジ ェ ク ト モデルに基づいて、 デー タ 転送、 HTML 生成、
お よ びサーバ ス ク リ プ ト の JavaScript 生成を処理 し ます。
250
PowerBuilder
レ ッ ス ン 12
1
Web ページの作成
Customer タ ーゲ ッ ト ア イ コ ン を右 ク リ ッ ク し 、 [新規作成] を選択 し ま
す。
新規作成 ダ イ ア ログボ ッ ク スで [Web] タ ブ を ク リ ッ ク し ます。
Web ペ ー ジ を 作成 す る ウ ィ ザ ー ド は、 Quick Web/JSP ペー ジ、
Web/JSP ページ、 4GL Web/JSP ページ、 Web/JSP デー タ ウ ィ ン ド ウ
ページ、 お よ びフ レ ーム セ ッ ト ページの 5 つか ら 選択で き ま す。
こ のチ ュ ー ト リ アルでは、 Web/JSP ページ、 4GL Web/JSP ページ、
お よ び Web/JSP デー タ ウ ィ ン ド ウ ページ ウ ィ ザー ド を使用 し ま
す。
タ ーゲ ッ ト 名の確認
タ ーゲ ッ ト ウ ィ ザー ド に よ っ て作成 さ れた タ ーゲ ッ ト は、 新規作
成 ダ イ ア ロ グ ボ ッ ク ス下部の [ タ ーゲ ッ ト ] リ ス ト ボ ッ ク ス に追
加 さ れます。 作成 し た Customer タ ーゲ ッ ト が表示 さ れます。
2
[4GL Web/JSP ページ] ア イ コ ン を ダ ブル ク リ ッ ク し ます。
3
[次へ] を ク リ ッ ク し ます。
[ タ イ ト ル] テキス ト ボ ッ ク スに タ イ ト ルの 「Welcome」 を入力 し 、 〔Tab〕
を押 し ます。
[フ ァ イ ル名] テ キ ス ト ボ ッ ク ス の フ ァ イ ル名は、 デ フ ォ ル ト で
Welcome.htm にな り ます。
PowerBuilder 入門
4
[背景属性の指定] ページが表示 さ れる まで [次へ] を ク リ ッ ク し ます。
[背景の色] に 「Yellow」 を指定 し ます。
5
[ページ パラ メ ー タ の定義] ページが表示 さ れる まで [次へ] を ク リ ッ ク
し 、 ウ ィ ザー ド のデ フ ォル ト を受け入れてい き ます。
[パラ メ ー タ 名]に「ID」 と 入力 し 、[デ フ ォル ト 値]を空白のま まに し ます。
[次へ] を ク リ ッ ク し ます。
251
基本 Web ページの作成 と 修正
6
[EAServer コ ンポーネン ト のスキ ッ プ] チ ェ ッ ク ボ ッ ク ス を オンに し ま
す。
EAServer 情報は、 次の レ ッ ス ン で追加 し ます。
7
[次へ] を ク リ ッ ク し ます。
[完了] ボ タ ン を ク リ ッ ク し ます。
新規の Web ページが作成 さ れ、ページ編集ビ ュ ーに表示 さ れます。
フ ァ イ ル名は Welcome.htm です。
8
ページ編集ビ ュ ーで、 デ フ ォル ト テキス ト の 「 こ こ にデー タ を置き ます」
を選択 し ます。
「PowerCAP 営業支援シ ス テム」 と 入力 し ます。
こ のチ ュ ー ト リ ア ルでは、 Web ペー ジ に対す る すべ て の変更 を
ページ編集ビ ュ ーで行い ます。 同 じ 変更を HTML ソ ース ビ ュ ーで
行 う には HTML の知識が必要です。
9
252
メ ニ ュ ー バーか ら [フ ァ イル|保存] を選択 し て、変更内容を保存 し ます。
PowerBuilder
レ ッ ス ン 12
Web ページの作成
フ ォ ン ト の変更
HTML エデ ィ タ で Web ページの見た目を変更す る のは簡単です。
1
テキス ト の末尾に カ ー ソルを置き、 〔Enter〕 を押 し ます。
テキス ト 「PowerCap 営業支援シ ス テム」 の中に カ ー ソルを置き ます。
ポッ プアッ プメ ニュ ーから 「段落プロ パティ 」を 右ク リ ッ ク し て選択し ます。
2
[イ ン ラ イ ン ス タ イル] タ ブ を ク リ ッ ク し ます。
[イ ン ラ イ ン] を選択 し 、 [編集] ボ タ ン を ク リ ッ ク し てから 、 [フ ォ ン ト ]
タ ブ を ク リ ッ ク し ます。
3
[使用で き る フ ォ ン ト ] リ ス ト を ス ク ロール し て、 「MS ゴ シ ッ ク 」 フ ォ ン
ト を選択 し ます。
矢印ボ タ ン を ク リ ッ ク し て 「MS ゴシ ッ ク 」 を [選択 さ れた フ ォ ン ト ] リ
ス ト ボ ッ ク スに移動 し ます。
4
[ フ ォ ン ト サイ ズ] で [単位を指定] ラ ジオボ タ ン を ク リ ッ ク し ます。
「20」 と 入力 し 、 [単位を指定] ラ ジオボ タ ンの横のボ ッ ク スか ら 「pt (ポ
イ ン ト サイズ)」 を選択 し ます。
[色] ド ロ ッ プ ダウン リ ス ト ボ ッ ク スから 「Red」 を選択 し ます。
5
[背景] タ ブ を ク リ ッ ク し てから 、[相対] ラ ジオボ タ ン を ク リ ッ ク し ます。
[横方向の位置] と [縦方向の位置] の下の ド ロ ッ プダウン リ ス ト ボ ッ ク
スか ら 「center」 を選択 し ます。
[背景色] の横の ド ロ ッ プ ダウン リ ス ト ボ ッ ク スから 「Blue」 を選択 し ま
す。
6
[OK] を 2 回 ク リ ッ ク し ます。
フ ォ ン ト の変更内容がテ キ ス ト に適用 さ れ ます。
ページ編集ビ ュ ー ポ ッ プア ッ プ メ ニ ュ ーの 「非表示 タ グ を表示」
がチ ェ ッ ク さ れてい る 場合だけ、 段落 タ グ が表示 さ れ ま す。 ペー
ジ 編集 ビ ュ ー内 の ペー ジ を 右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ
ニ ュ ーを表示 し ます。
7
PowerBuilder 入門
メ ニ ュ ー バーから [フ ァ イル|保存] を選択 し ます。
253
基本 Web ページの作成 と 修正
グ ラ フ ィ ッ ク の追加
こ の ス テ ッ プでは、 ウ ェ ルカ ム ページに画像フ ァ イ ルを追加 し ます。
1
シ ス テム ツ リ ーで Customer タ ーゲ ッ ト を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [新規 フ ォルダ] を ク リ ッ ク し ます。
2
フ ォルダ名に 「Graphics」 と 入力 し 、 〔Enter〕 を押 し ます。
3
Graphics フ ォルダ を右ク リ ッ ク し 、[フ ァ イルのイ ンポー ト ] を選択 し ま
す。
[フ ァ イルの種類] ド ロ ッ プダウン リ ス ト ボ ッ ク スか ら 「すべての フ ァ イ
ル」 を選択 し ます。
4
Tutorial フ ォルダに移動 し 、 フ ァ イルの種類 と し て 「画像フ ァ イル」 を選
択 し ます。
tshirtw.jpg を選択 し 、 [開 く ] を ク リ ッ ク し ます。
こ の画像フ ァ イ ルが Graphics フ ォ ルダに コ ピー さ れ ます。
254
5
Welcome.htm ページの中を ク リ ッ ク し ます。
PowerCap タ イ ト ルの下の段落に カ ー ソ ルを置き ます。
〔Enter〕 を押 し て、 タ イ ト ルの下にスペース を追加 し ます。
6
PowerCap タ イ ト ルの下の段落に再び カ ー ソ ルを置き ます。
メ ニ ュ ー バーの [挿入|画像] を選択 し ます。
7
[画像フ ァ イル] テキス ト ボ ッ ク スの横の参照 ( [...] ) ボ タ ン を ク リ ッ ク
し ます。
8
URL の選択 ダ イ ア ログボ ッ ク スの[ タ ーゲ ッ ト ] ページの Graphics フ ォ
ルダ を展開 し ます。
PowerBuilder
レ ッ ス ン 12
9
Web ページの作成
この フ ォルダか ら フ ァ イル名 「tshirtw.jpg」 を選択 し ます。
10 URL の選択 ダ イ ア ログボ ッ ク スで [OK] を ク リ ッ ク し 、 画像プ ロパテ ィ
ダ イ ア ログボ ッ ク スで も [OK] を ク リ ッ ク し ます。
白い T シ ャ ツ (tshirtw.jpg) の画像が ウ ェ ルカ ム ページに表示 さ れ
ます。
グ ラ フ ィ ッ ク への絶対位置の追加
こ の ス テ ッ プでは、 ページ上の特定の位置に画像を固定 し ます。 絶対
位置を使用す る と 、 画面サ イ ズに関係な く 、 ページ上にグ ラ フ ィ ッ ク
を表示す る 位置を固定で き ます。
PowerBuilder 入門
1
T シ ャ ツのグ ラ フ ィ ッ ク を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [位置|絶対位置を使用] を選択 し ます。
2
見出 し の下にあるグ ラ フ ィ ッ ク を ド ラ ッ グ し て、青いバーの下の中央に揃
えます。
255
基本 Web ページの作成 と 修正
256
3
[プ レ ビ ュ ー] タ ブ を ク リ ッ ク し 、 配布時のページの見た目を確認 し ます。
4
メ ニ ュ ー バーか ら [フ ァ イル|保存] を選択 し ます。
PowerBuilder
レ ッ ス ン 12
Web ページの作成
ページ ナ ビゲーシ ョ ンの追加
現在の学習個所
PowerDynamo Web サイ ト の作成
基本 Web ページ の作成と 修正
> ページ ナビ ゲーシ ョ ン の追加
検証と リ ダイ レ ク ト を 行う ロ グイ ン ページ の作成
スタ ート ページ の指定
Web サイ ト の配布と 実行
こ の レ ッ ス ン では、 商品情報を表示す る 新規の Web ページ を追加 し ま
す。 さ ら に、 こ の新規ページにア ク セ ス す る ハ イ パー リ ン ク を ウ ェ ル
カ ム ページに追加 し ます。 最後に、 新規の商品情報を追加で き る Web
ページ ま で最終的に移動す る ボ タ ン を新規ページに追加 し ます。 その
ほかの機能を こ の Web ページへ追加す る 作業は、 後の レ ッ ス ン で行い
ます。
•
商品情報の Web ページ の作成
•
ハイ パーリ ン ク の追加
•
ボタ ン の追加
商品情報の Web ページの作成
こ の ス テ ッ プでは、 商品情報を表示お よ び追加す る Web ページ を作成
し ます。 こ の新規の Web ページには、 ウ ェ ルカ ム ページか ら ア ク セ ス
し ます。 こ の新規のページは 4GL ウ ィ ザー ド を使用 し な く て も 作成で
き ますが、4GL Web ページ を使用す る と 、 サーバ サ イ ド ス ク リ プ ト 機
能が埋め込 ま れ、 デー タ ベース 情報に容易にア ク セ ス で き る よ う にな
り ます。
1
シ ス テム ツ リ ーで Customer タ ーゲ ッ ト を右 ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーから [新規作成] を選択 し ます。
2
[4GL Web/JSP ページ]ア イ コ ン を ク リ ッ ク し 、[OK]を ク リ ッ ク し ます。
4GL Web ページ ウ ィ ザー ド についてページが表示 さ れます。
3
PowerBuilder 入門
[次へ] を ク リ ッ ク し ます。
[ タ イ ト ル] テキス ト ボ ッ ク スに タ イ ト ルの 「Product」 を入力 し 、 〔Tab〕
を押 し ます。
257
ページ ナ ビゲーシ ョ ンの追加
[フ ァ イ ル名] テ キ ス ト ボ ッ ク ス の フ ァ イ ル名は、 デ フ ォ ル ト で
Product.htm にな り ます。
4
[ページ パラ メ ー タ の定義] ページが表示 さ れる ま で [次へ] を ク リ ッ ク
し ます (ウ ィ ザー ド のデ フ ォル ト を受け入れてい き ます)。
[パラ メ ー タ 名]に「ID」 と 入力 し 、[デ フ ォル ト 値] を空白のま まに し ます。
[次へ] を ク リ ッ ク し ます。
[EAServer プ ロ フ ァ イ ルの選択] ページが表示 さ れ ます。
5
[EAServer コ ンポーネ ン ト のスキ ッ プ] チ ェ ッ ク ボ ッ ク ス を オ ンに し ま
す。
6
[次へ] を ク リ ッ ク し ます。
ページ プ ロパテ ィ のま と めを確認 し 、 [完了] を ク リ ッ ク し ます。
Product.htm ページがページ編集ビ ュ ーに表示 さ れます。
7
デ フ ォル ト テキス ト の 「 こ こ にデー タ を置き ます」 をハイ ラ イ ト 表示 し
ます。
「商品情報」 と 入力 し ます。
〔Enter〕 を押 し ます。
8
[フ ァ イル|保存] を選択 し て、 これま での変更内容を保存 し ます。
ハイパー リ ン ク の追加
こ の ス テ ッ プでは、 商品 Web ページにア ク セ スす る ハ イ パー リ ン ク を
ウ ェ ルカ ム ページに追加 し ます。
1
258
ウ ェ ルカ ム ページ (Welcome.htm) を表示 し ます。
「PowerCap 営業支援シ ス テム」 の 2 つ下の段落の中に カ ー ソ ルを置き、
〔Enter〕 を 2 回押 し ます。
PowerBuilder
レ ッ ス ン 12
2
Web ページの作成
メ ニ ュ ー バーから [書式|ハイパー リ ン ク ] を選択 し ます。
ハ イ パー リ ン ク プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
3
[ リ ン ク 文字列] テキス ト ボ ッ ク スに 「商品情報を表示 」 と 入力 し ます。
[行先] テキス ト ボ ッ ク スの横の参照 ([...]) ボ タ ン を ク リ ッ ク し ます。
URL の選択 ダ イ ア ロ グボ ッ ク ス が開 き 、Customer タ ーゲ ッ ト 内で
すでに作成 さ れた Web ページが表示 さ れます。
4
「Product.htm」 を選択 し 、 [OK] を ク リ ッ ク し ます。
5
[OK] を再度ク リ ッ ク し て Web ページにハイパー リ ン ク を追加 し ます。
下線付 き のハ イ パー リ ン ク 「商品情報を表示」 が ウ ェ ルカ ム ペー
ジに表示 さ れます。
6
メ ニ ュ ー バーから [フ ァ イル|保存] を選択 し ます。
ウ ェ ルカム ページ を閉 じ ます。
ボ タ ンの追加
こ の ス テ ッ プでは、 商品ページにボ タ ン を追加 し ます。 ボ タ ンは Web
ページ上での一般的なナビ ゲーシ ョ ン ツールです。 こ のチ ュ ー ト リ ア
ルの後の方では、 ナ ビ ゲーシ ョ ン ロ ジ ッ ク を こ のボ タ ン に追加 し ま
す。
PowerBuilder 入門
259
ページ ナ ビゲーシ ョ ンの追加
1
商品ページ (Product.htm) を表示 し ます。
「商品情報」 の見出 し の下の段落に カ ー ソルを置き ます。
2
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | コ マ ン ド ボ タ ン] を選
択 し ます。
Button プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
3
[ボ タ ンの種類] ド ロ ッ プダウン リ ス ト から 「Button」 を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「cb_addproduct」 と 入力 し ます。
[ラ ベル] テキス ト ボ ッ ク スに 「商品の追加」 と 入力 し ます。
4
[OK] を ク リ ッ ク し ます。
Product.htm ページにボ タ ンが表示 さ れます。
次の レ ッ ス ン では こ のボ タ ン を Web ページに接続 し ます。
260
5
メ ニ ュ ー バーか ら [フ ァ イル|保存] を選択 し ます。
6
商品ページ を閉 じ ます。
PowerBuilder
レ ッ ス ン 12
Web ページの作成
検証 と リ ダ イ レ ク ト を行 う ログ イ ン ページの作成
現在の学習個所
PowerDynamo Web サイ ト の作成
基本 Web ページ の作成と 修正
ページ ナビ ゲーシ ョ ン の追加
> 検証と リ ダイ レ ク ト を 行う ロ グイ ン ページ の作成
スタ ート ページ の指定
Web サイ ト の配布と 実行
こ の ス テ ッ プでは、 4GL 機能を持つ ロ グ イ ン Web ページ (Login.htm)
を追加 し ます。 こ の ロ グ イ ン ページは単純な設計です。 こ のチ ュー ト
リ アルでは、 サーバ サ イ ド の検証ス ク リ プ ト に よ っ てユーザ名 と パ ス
ワ ー ド が同 じ か ど う か判別 さ れます。 こ れは検証 ロ ジ ッ ク に よ っ て判
別 さ れ ま す。 本番アプ リ ケーシ ョ ン では、 よ り 高度な検証 ロ ジ ッ ク を
使用 し ます。
ロ グ イ ン情報が入力条件則を満た し た ら 、 サーバ リ ダ イ レ ク ト を追加
し て ウ ェ ルカ ム ページに移動 し ます。
ユーザ名 と パ ス ワ ー ド はセ ッ シ ョ ン 変数 と し て保存 さ れ ま す。 こ の
セ ッ シ ョ ン変数は、 Web セ ッ シ ョ ン全体にわた っ て有効 と な り ます。
こ の練習では以下の操作を行い ます。
PowerBuilder 入門
•
基本ロ グ イ ン ページ の作成
•
セッ ショ ン 変数の追加
•
シ ン グ ル ラ イ ン テ キ ス ト コ ン ト ロ ールの追加
•
パス ワ ード の検証の追加
•
サーバ リ ダ イ レ ク ト の追加
261
検証 と リ ダ イ レ ク ト を行 う ログ イ ン ページの作成
基本ログ イ ン ページの作成
まず、 4GL ウ ィ ザー ド を使用 し て ロ グ イ ン ページ を作成 し ます。
1
Customer タ ーゲッ ト を 選択し た状態で、 メ ニュ ー バーから [フ ァ イル|
新規作成] を選択 し ます。
[Web] タ ブ を ク リ ッ ク し ます。
2
[4GL Web/JSP ページ] ア イ コ ン を ク リ ッ ク し ます。
[OK] を ク リ ッ ク し ます。
[4GL Web ページ ウ ィ ザー ド について] ページが表示 さ れます。
3
[次へ] を ク リ ッ ク し ます。
[ タ イ ト ル] テキス ト ボ ッ ク スに タ イ ト ルの 「Login」 を入力 し 、 〔Tab〕
を押 し ます。
[フ ァ イ ル名] テ キ ス ト ボ ッ ク ス の フ ァ イ ル名は、 デ フ ォ ル ト で
Login.htm にな り ます。
4
[ページ パラ メ ー タ の定義] ページが表示 さ れる ま で [次へ] を ク リ ッ ク
し ます (ウ ィ ザー ド のデ フ ォル ト を受け入れてい き ます)。
5
[パラ メ ー タ 名]に「ID」 と 入力 し 、[デ フ ォル ト 値] を空白のま まに し ます。
[次へ] を ク リ ッ ク し ます。
[EAServer プ ロ フ ァ イ ルの選択] ページが表示 さ れ ます。
6
[EAServer コ ンポーネ ン ト のスキ ッ プ] チ ェ ッ ク ボ ッ ク ス を オ ンに し ま
す。
7
[次へ] を ク リ ッ ク し ます。
ページ プ ロパテ ィ のま と めを確認 し 、 [完了] を ク リ ッ ク し ます。
Login.htm ページがページ編集ビ ュ ーに表示 さ れます。
8
262
メ ニ ュ ー バーか ら [フ ァ イル|保存] を選択 し ます。
PowerBuilder
レ ッ ス ン 12
Web ページの作成
セ ッ シ ョ ン変数の追加
セ ッ シ ョ ン変数では、 ユーザ ロ グ イ ン情報や、 ユーザのブ ラ ウ ザ セ ッ
シ ョ ン 中に Web ア プ リ ケーシ ョ ン 内すべて のページ で利用 し たいそ
のほかのデー タ を追跡で き ます。
1
ページ編集ビ ュ ーで、 デ フ ォル ト テキス ト の 「 こ こ にデー タ を置き ます」
をハイ ラ イ ト 表示 し ます。
このハイ ラ イ ト 表示 し た テキス ト を、 次のテキス ト で置き換えます。
ログ イ ン し て く だ さ い
2
〔Enter〕 を押 し ます。
新 し い行に、以下のテキス ト を入力 し 、各行の末尾で 〔Enter〕 を押 し ます。
名前
パスワー ド
PowerBuilder 入門
3
Login.htm ページ を右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから [ペー
ジ プ ロパテ ィ ] を選択 し ます。
[変数] タ ブ を ク リ ッ ク し ます。
4
[変数名]の下で ク リ ッ ク し 、も う 一度 ク リ ッ ク し 、新規の変数名を 「user」
と 入力 し ます。
5
〔Tab〕 を押 し て [ラ イ フ タ イム] カ ラムに移動 し 、 ド ロ ッ プダウン リ ス
ト ボ ッ ク スか ら 「session」 を選択 し ます。
〔Tab〕 を押 し て [ ク ラ イ ア ン ト ア ク セ ス] カ ラ ムに移動 し 、 ド ロ ッ プ ダ
ウン リ ス ト ボ ッ ク スから 「Read/Write」 を選択 し ます。
6
[変数名] カ ラ ム内の user の下で ク リ ッ ク し 、 も う 一度ク リ ッ ク し 、 新
規の変数名を 「pswd」 と 入力 し ます。
263
検証 と リ ダ イ レ ク ト を行 う ログ イ ン ページの作成
7
〔Tab〕 を押 し て [ラ イ フ タ イ ム] カ ラ ムに移動 し 、 ド ロ ッ プ ダウン リ ス
ト ボ ッ ク スから 「session」 を選択 し ます。
〔Tab〕 を押 し て [ク ラ イ ア ン ト ア ク セ ス] カ ラ ムに移動 し 、 ド ロ ッ プ ダ
ウン リ ス ト ボ ッ ク スか ら 「Read/Write」 を選択 し ます。
8
[OK] を ク リ ッ ク し ます。
こ れでユーザ ロ グ イ ン情報のための 2 つのセ ッ シ ョ ン変数が定義
さ れ ま し た。
シ ングル ラ イ ン テキス ト コ ン ト ロールの追加
テ キ ス ト コ ン ト ロ ールは、サーバ ス ク リ プ ト に よ っ て操作で き る 特殊
なテ キ ス ト フ ィ ール ド です。 ク ラ イ ア ン ト は こ のテ キ ス ト の値を変更
で き ません。 こ れは 4GL Web ページでのみ使用可能です。
1
Login.htm ページ で、名前 と い う 文字の後に カ ー ソルを置き、 スペース を
2 つ入力 し ます。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド |シ ングル ラ イ ン テキス
ト ] を選択 し ます。
テ キ ス ト コ ン ト ロ ール プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ
れます。
2
264
[名前] テキス ト ボ ッ ク スに 「sle_user」 と 入力 し 、 [サーバに処理を記
述する] チ ェ ッ ク ボ ッ ク スがオ ンにな っ ている こ と を確認 し ます。
PowerBuilder
レ ッ ス ン 12
3
Web ページの作成
[バイ ン ド ] タ ブ を ク リ ッ ク し ます。
[ コ ン ポ ー ネ ン ト 名] ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク ス か ら 「Session
Variable」 を選択 し ます。
[プ ロパテ ィ 名] ド ロ ッ プ ダウ ン リ ス ト ボ ッ ク スか ら 「user」 を選択 し
て、 [OK] を ク リ ッ ク し ます。
名前 と い う テ キ ス ト の後にテ キ ス ト ボ ッ ク ス が挿入 さ れます。
4
ページ編集ビ ュ ーで、 パスワー ド と い う 文字の後に カ ー ソ ルを置き、 ス
ペース を 2 つ入力 し ます。
[挿入|フ ォ ーム フ ィ ール ド |シ ングルラ イ ン テキス ト ] を選択 し ます。
5
[名前] テキス ト ボ ッ ク スに 「sle_pswd」 と 入力 し ます。
[パスワー ド ] チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。
[サーバに処理を記述する] チ ェ ッ ク ボ ッ ク スがオ ン にな っ ている こ と を
確認 し ます。
[パ ス ワー ド ] チ ェ ッ ク ボ ッ ク ス を オン にす る と 、 ユーザが入力 し
たパ ス ワ ー ド がア ス タ リ ス ク で表示 さ れ ま す。 テ キ ス ト ボ ッ ク ス
を Web ページに追加 し た後で こ の機能を追加す る こ と はで き ませ
ん。
6
[バイ ン ド ] タ ブ を ク リ ッ ク し ます。
[ コ ン ポ ー ネ ン ト 名] ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク スか ら 「<Session
Variable>」 を選択 し ます。
[プ ロパテ ィ 名] ド ロ ッ プ ダウ ン リ ス ト ボ ッ ク スか ら 「pswd」 を選択 し
て、 [OK] を ク リ ッ ク し ます。
パ ス ワ ー ド と い う テ キ ス ト の後にテ キ ス ト ボ ッ ク ス が挿入 さ れ ま
す。
7
PowerBuilder 入門
メ ニ ュ ー バーから [フ ァ イル|保存] を選択 し ます。
265
検証 と リ ダ イ レ ク ト を行 う ログ イ ン ページの作成
パスワー ド の検証の追加
検証には ク ラ イ ア ン ト サ イ ド ま たはサーバ サ イ ド の ス ク リ プ ト を使
用で き ま す。 こ の練習では、 サーバ サ イ ド ス ク リ プ ト を 使用 し て、
ユーザが入力 し たユーザ名が、 ユーザが入力 し たパ ス ワ ー ド と 同 じ か
ど う か を 判別 し ま す。 こ の検証用 コ ー ド は あ く ま で例です。 通常は、
ユーザ名 と パ ス ワー ド をデー タ ベース と 照合 し て検証 し ます。
次の レ ッ ス ン では、 ロ グ イ ン が完了 し た後に ウ ェ ルカ ム ページ を表示
す る コ ー ド を追加 し ます。ユーザ名 と パ ス ワー ド が一致 し ない場合は、
再試行す る よ う ユーザに依頼す る エ ラ ー メ ッ セージ を表示 し ます。
1
ログ イ ン ページ上で [パスワー ド ] テキス ト ボ ッ ク スの下の段落に カ ー
ソ ルを置き、 〔Enter〕 を押 し ます。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | コ マ ン ド ボ タ ン] を選
択 し ます。
Button プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
2
[ボ タ ンの種類] ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで「Button」を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「cb_login」 と 入力 し ます。
[ラ ベル] テキス ト ボ ッ ク スに 「ログ イ ン」 と 入力 し ます。
4GL Web ページでは、 送信 (Submit) ボ タ ン の種類 と 標準ボ タ ン
の種類 (ボ タ ン) は同 じ よ う に機能 し 、 ど ち ら に も ク ラ イ ア ン ト
サ イ ド の onclick イ ベン ト と サーバ サ イ ド の Server Action イ ベン
ト があ り ます。
3
[OK] を ク リ ッ ク し ます。
[パ ス ワー ド ] テ キ ス ト ボ ッ ク ス の下に新 し い [ ロ グ イ ン] ボ タ ン
が表示 さ れます。
266
PowerBuilder
レ ッ ス ン 12
Web ページの作成
4
ページ編集ビ ュ ー下部のス ク リ プ ト エデ ィ タ の最初の ド ロ ッ プ ダウン リ
ス ト ボ ッ ク スで、 「cb_login」 を選択 し ます。
5
中央の ド ロ ッ プダウン リ ス ト ボ ッ ク ス を ス ク ロール し て、「ServerAction
()」 を選択 し ます。
サーバ サ イ ド イ ベン ト は青い文字で表示 さ れます。
6
ス ク リ プ ト エデ ィ タ に以下のよ う に入力 し ます。
if (sle_user.value == sle_pswd.value){
user = sle_user.value;
pswd = sle_pswd.value;
こ の ス ク リ プ ト は、 ユーザ名 と パ ス ワ ー ド が同 じ か ど う か を判別
し 、 同 じ で あれば、 ク ラ イ ア ン ト が入力 し た ユーザ名 と パ ス ワ ー
ド を、 セ ッ シ ョ ン変数に代入 し ます。
7
〔Enter〕 を押 し ます。
今入力 し たス ク リ プ ト の下に、 次の コ メ ン ト 行を入力 し ます。
// リ ダ イ レ ク ト を こ こ に追加する
リ ダ イ レ ク ト 呼び出 し の追加は、 こ のチ ュ ー ト リ アルの次の レ ッ
ス ン で行い ます。
8
〔Enter〕 を 2 回押 し ます。
次の else 文を入力 し て エ ラ ー メ ッ セージ を追加 し ます。
} else {
psPage.Alert (" ユーザ名 と パスワー ド は無効です。 再入力 し て
く だ さ い ") ;
}
9
PowerBuilder 入門
ペ イ ン タ バーの [保存] ボ タ ン を ク リ ッ ク し ます。
267
検証 と リ ダ イ レ ク ト を行 う ログ イ ン ページの作成
サーバ リ ダ イ レ ク ト の追加
大部分の 4GL Web ページは、サーバ リ ダ イ レ ク ト に よ っ てほかのペー
ジに移動 し ます。 サーバ リ ダ イ レ ク ト は、 ページ間を移動す る方法 と
し ては も っ と も 柔軟性の高い も のです。
サーバ リ ダ イ レ ク ト が使用 さ れ る のは、 ほかのページに渡 さ れ る パ ラ
メ ー タ 値がユーザ入力に依存す る 場合、 ま たはユーザ入力を検証 し た
い場合です。 こ の ス テ ッ プでは、 タ ーゲ ッ ト ページ ( ウ ェ ルカ ム ペー
ジ) の指定お よ び ロ グ イ ン ページのユーザ入力値の検証を行 う サーバ
ス ク リ プ ト を含め る よ う に、 4GL ロ グ イ ン ページ を変更 し ます。
1
Login.htm ページ下部のスク リ プ ト エディ タ で、 コ メ ン ト 行 「// リ ダ イ
レ ク ト を こ こ に追加する」 の 2 行下に カー ソ ルを置き ます。
右 ク リ ッ ク し 、 ポ ッ プ ア ッ プ メ ニ ュ ーか ら [ リ ダ イ レ ク ト の挿入] を選
択 し ます。
リ ダ イ レ ク ト プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
2
[ロ ケーシ ョ ン] テキス ト ボ ッ ク スの横の参照 ( [...] ) ボ タ ン を ク リ ッ ク
し ます。
コ ン テ ン ツ Customer ツ リ ービ ュ ーから Welcome.htm を選択 し ます。
3
[OK] を 2 回ク リ ッ ク し ます。
ス ク リ プ ト エデ ィ タ で コ ー ド のブ ロ ッ ク が挿入 さ れま す。 ポ ッ プ
ア ッ プ メ ニ ュ ーの [ リ ダ イ レ ク ト の編集] ま たは [ リ ダ イ レ ク ト
の削除] コ マ ン ド を使用 し て、 こ の コ ー ド のブ ロ ッ ク を修正 ま た
は削除で き ます。
4
268
メ ニ ュ ー バーか ら [フ ァ イル|保存] を選択 し ます。
PowerBuilder
レ ッ ス ン 12
Web ページの作成
ス タ ー ト ページの指定
現在の学習個所
PowerDynamo Web サイ ト の作成
基本 Web ページ の作成と 修正
ページ ナビ ゲーシ ョ ン の追加
検証と リ ダイ レ ク ト を 行う ロ グイ ン ページ の作成
> スタ ート ページ の指定
Web サイ ト の配布と 実行
こ の ス テ ッ プでは、 Web サ イ ト を PowerBuilder か ら 直接テ ス ト お よ び
実行で き る ス タ ー ト ページ を選択 し ます。
1
シ ス テム ツ リ ーで、 Customer を右 ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を選択 し ます。
タ ーゲ ッ ト Customer のプ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ
れます。
2
[実行 / デバ ッ グ] タ ブ を ク リ ッ ク し 、 [ス タ ー ト ページ] テキス ト ボ ッ ク
スの横の参照 ([...]) ボ タ ン を ク リ ッ ク し ます。
3
URL の選択 ダ イ ア ログボ ッ ク スの [ タ ーゲ ッ ト ] ページ で、 Login.htm
を選択 し 、 [OK] を ク リ ッ ク し ます。
4
タ ーゲ ッ ト Customer のプ ロパテ ィ ダ イ ア ログボ ッ ク スの [デー タ ベー
ス] タ ブ を ク リ ッ ク し ます。
5
[プ ロ フ ァ イル名] リ ス ト 内の [EAS Demo DB V9 ] チ ェ ッ ク ボ ッ ク ス を
オンに し ます。
[OK] を ク リ ッ ク し ます。
PowerDynamo Web Site ウ ィ ザー ド で作成 し た Customer デー タ ベー
ス には、 Web の メ タ デー タ が含 ま れ ま す。 EAS Demo デー タ ベー
ス を アプ リ ケーシ ョ ン デー タ ベース と し て使用 し ます。
デー タ ベース プ ロ フ ァ イルの設定
EAS Demo DB V9 は、PowerBuilder を イ ン ス ト ールす る と き に使用
可能なデー タ ベース プ ロ フ ァ イ ルです。 詳細については、 レ ッ ス
ン 3、 EAS Demo DB データ ベース の参照を参照 し て く だ さ い。
こ れで Customer タ ーゲ ッ ト を配布す る 準備がで き ま し た。
6
PowerBuilder 入門
メ ニ ュ ー バーから [フ ァ イル|保存] を選択 し ます。
269
Web サイ ト の配布 と 実行
Web サイ ト の配布 と 実行
現在の学習個所
PowerDynamo Web サイ ト の作成
基本 Web ページ の作成と 修正
ページ ナビ ゲーシ ョ ン の追加
検証と リ ダイ レ ク ト を 行う ロ グイ ン ページ の作成
ス タ ート ページ の指定
> Web サイ ト の配布と 実行
こ の ス テ ッ プでは、 Web サ イ ト を配布 し ます。
1
シ ス テム ツ リ ーで、 Customer タ ーゲ ッ ト を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [配布] を選択 し ます。
配布が終了す る と 、出力ビ ューに 「終了 タ ーゲ ッ ト の配布 Customer」
と 表示 さ れ ます。
2
Windows の [ス タ ー ト ] メ ニ ュ ーを ク リ ッ ク し てから 、 [プ ログ ラム|
Sybase | PowerDynamo 3.6 | Personal Web Server] を選択 し ます。
PowerDynamo Personal Web Server が 起 動 し ま す。 [Personal Web
Server] ア イ コ ン が Windows の タ ス ク バーに表示 さ れます。
3
270
メ ニ ュ ー バーか ら [実行|選択 し て実行] を選択 し ます。
タ ーゲ ッ ト の選択 ダ イ ア ログボ ッ ク スで [Customer] を選択 し ます。
[OK] を ク リ ッ ク し ます。
PowerBuilder
レ ッ ス ン 12
Web ページの作成
デフ ォ ル ト のブ ラ ウ ザが開 き ます。 URL ア ド レ ス ボ ッ ク ス には、
作成 し た Login.htm Web ページのフ ァ イ ル パ ス が入っ てい ます。ロ
グ イ ン ページが表示 さ れます。
4
[名前] テキス ト ボ ッ ク スに 「Hello」 と 入力 し 、 [パスワー ド ] テキス ト
ボ ッ ク スに 「Good-bye」 と 入力 し ます。
[ログ イ ン] ボ タ ン を ク リ ッ ク し ます。
ユーザ名 と パ ス ワー ド が一致 し ないため、 エ ラ ー メ ッ セージが表
示 さ れ ます。
5
PowerBuilder 入門
[OK] を ク リ ッ ク し ます。
[名前] テ キ ス ト ボ ッ ク ス と [パ ス ワー ド ] テ キ ス ト ボ ッ ク スの両方に
「Hello」 と 入力 し ます。
[ログ イ ン] ボ タ ン を ク リ ッ ク し ます。
271
Web サイ ト の配布 と 実行
今度は ウ ェ ルカ ム ページが表示 さ れます。
6
[商品情報を表示] ハイパー リ ン ク を ク リ ッ ク し ます。
商品情報 Web ページ (Product.htm) が表示 さ れます。
次の レ ッ ス ン では、 商品情報ページに Web デー タ ウ ィ ン ド ウ を追
加 し ます。
7
272
ブ ラ ウザを閉 じ ます。
PowerBuilder
レ ッ ス ン 1 3
Web デー タ ウ ィ ン ド ウの使い方
Web デー タ ウ ィ ン ド ウ では、デー タ ソ ース と ク ラ イ ア ン ト ブ ラ ウ
ザ と の イ ン タ フ ェ ース が提供 さ れ、 デー タ ソ ース か ら の結果セ ッ
ト が Web ページ上に表示 さ れます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
EAServer 接続プロ フ ァ イ ルのセッ ト ア ッ プ
•
Web データ ウ ィ ン ド ウ コ ン テナの構築
•
Web データ ウ ィ ン ド ウ コ ン テ ナを 使用し て の Web ページ の
作成
•
データ ウ ィ ン ド ウ Web ページへのほかのコ ン ト ロ ールの追加
•
既存の Web ページ へのデータ ウ ィ ン ド ウ の追加
•
商品情報の検索機能の追加
•
Web ア プリ ケ ーショ ン のテス ト と 実行
所要時間
約 40 分
こ のレ ッ ス ン を開始する前
に
Web デー タ ウ ィ ン ド ウ の レ ッ ス ン 中に問題が起 き な い よ う に、
Sybase¥EAServer¥Html¥Classes フ ォ ル ダ が、 ご 使用の シ ス テ ム の
CLASSPATH 環境変数に リ ス ト さ れてい る こ と を確認 し て く だ さ
い。
以下の点 も 確認す る 必要があ り ます。
PowerBuilder 入門
•
Sybase¥Shared¥Sun¥Jdknnn¥JRE¥Bin¥Client デ ィ レ ク ト リ が
PATH 環境変数に リ ス ト さ れてい る (nnn は使用す る JDK の
バージ ョ ン を表す) こ と 。 JDK 1.4 を使用す る 場合は、 かわ り
に、Sybase¥Shared¥PowerBuilder¥JDK14¥JRE¥Bin¥Client デ ィ レ
ク ト リ を PATH 環境変数の リ ス ト に追加す る 。
•
PowerDynamo で正 し いバージ ョ ン の Java VM が使用 さ れてい
る
273
チ ェ ッ ク す る には、 ま ず Sybase Central を開 き、 PowerDynamo 3.6
の下のユーテ ィ リ テ ィ フ ォ ルダ と 設定フ ォ ルダ を展開 し ます。 左
ペ イ ン のデフ ォ ル ト の JAVA 設定お よ び右ペ イ ン の Java VM を ダ
ブル ク リ ッ ク し 、 ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク ス か ら 「Sun Java
VM 1.2」 を選択 し ます。
274
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
EAServer 接続プ ロ フ ァ イルのセ ッ ト ア ッ プ
現在の学習個所
> EAServer 接続プ ロ フ ァ イ ルのセッ ト ア ッ プ
Web データ ウィ ン ド ウ コ ン テ ナの構築
Web データ ウィ ン ド ウ コ ン テ ナを 使用し ての Web ページ の作成
データ ウィ ン ド ウ Web ページ へのほかのコ ン ト ロ ールの追加
既存の Web ページ へのデータ ウィ ン ド ウの追加
商品情報の検索機能の追加
Web ア プ リ ケーシ ョ ン のテ スト と 実行
こ の ス テ ッ プでは、 EAServer の接続プ ロ フ ァ イ ルを セ ッ ト ア ッ プ し ま
す。 こ のチ ュ ー ト リ アルでは、 読者が ロ ーカル マ シ ン で EAServer を
使用 し てい る こ と を前提 と し てい ます。
1
Windows の [ス タ ー ト ] メ ニ ュ ーから 、 [プ ログ ラ ム| Sybase |
EAServer 4.2 | Jaguar Server] を選択 し て EAServer を起動 し ます。
DOS ウ ィ ン ド ウ が表示 さ れ、 サーバが起動 さ れ ます。 「Accepting
Connections」 と い う メ ッ セージが表示 さ れた ら 、 DOS ウ ィ ン ド ウ
を最小化 し ます。
2
PowerBuilder の メ ニ ュ ー バーから 、[ツール| EAServer プ ロ フ ァ イル]
を選択 し ます。
次の画面が表示 さ れます。
3
PowerBuilder 入門
[追加] を ク リ ッ ク し ます。
275
EAServer 接続プ ロ フ ァ イルのセ ッ ト ア ッ プ
EAServer プ ロ フ ァ イ ルの編集ダ イ ア ロ グ ボ ッ ク ス が開 き ます。
4
5
以下の情報を入力 し ます。
プ ロ フ ァ イルの
プ ロパテ ィ
プ ロ フ ァ イ ル名
入力する値
local
サーバ名
マ シ ン名 ( ロ ーカルマシ ン の名前を入力す る 。 デ
ポー ト 番号
ログイン
フ ォ ル ト では、 こ のサーバ名への リ ス ナが イ ン ス
ト ール さ れ る )
9000
jagadmin
パ ス ワー ド
な し (空白の ま ま にする )
入力を終えた ら [テス ト ] を ク リ ッ ク し ます。
「Connection Successful」 と い う メ ッ セージが表示 さ れます。
6
276
[OK] を 2 回ク リ ッ ク し 、 [終了] を ク リ ッ ク し ます。
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
Web デー タ ウ ィ ン ド ウ コ ン テナの構築
現在の学習個所
EAServer 接続プ ロ フ ァ イ ルのセッ ト ア ッ プ
> Web データ ウィ ン ド ウ コ ン テ ナの構築
Web データ ウィ ン ド ウ コ ン テ ナを 使用し ての Web ページ の作成
データ ウィ ン ド ウ Web ページ へのほかのコ ン ト ロ ールの追加
既存の Web ページ へのデータ ウィ ン ド ウの追加
商品情報の検索機能の追加
Web ア プ リ ケーシ ョ ン のテ スト と 実行
Web デー タ ウ ィ ン ド ウ コ ン テナでは、 ページに必要なすべてのサポー
ト フ ァ イ ル と プ ロ パテ ィ が、 サーバ上に イ ン ス ト ール さ れた 1 つの領
域に集め ら れます。
Web デー タ ウ ィ ン ド ウ コ ン テナ ウ ィ ザー ド では、HTMLGenerator90 イ
ン タ フ ェ ー ス を 実装 し てすべて のデー タ ウ ィ ン ド ウ オブ ジ ェ ク ト を
デー タ ベー ス 接続情報 と 一緒にパ ッ ケージす る カ ス タ ム EAServer コ
ン ポーネ ン ト が作成 さ れ ます。
こ の レ ッ ス ン では、Web デー タ ウ ィ ン ド ウ コ ン テナ ウ ィ ザー ド を使用
し て Web デー タ ウ ィ ン ド ウ コ ン テナを構築 し 、サーバに コ ン ポーネ ン
ト を直接配布 し て Web アプ リ ケーシ ョ ン が使用で き る よ う に し ます。
1
メ ニ ュ ー バーから [フ ァ イル|新規作成] を選択 し 、 新規作成 ダ イ ア ロ
グボ ッ ク スの [プ ロ ジ ェ ク ト ] タ ブ を ク リ ッ ク し ます。
2
[Web DW コ ン テナ ウ ィ ザー ド ] ア イ コ ン を選択 し て [OK] を ク リ ッ ク
し ます。
ウ ィ ザー ド の最初のページ で [次へ] を ク リ ッ ク し ます。
3
[ア プ リ ケーシ ョ ン ラ イ ブ ラ リ ] リ ス ト で 「pbtutor.pbl」 フ ァ イルが選択
さ れている こ と を確認 し て、 [次へ] を ク リ ッ ク し ます。
[プ ロ ジ ェ ク ト の指定] ページが表示 さ れ ます。
4
[次へ] を ク リ ッ ク し ます。
デフ ォ ル ト のプ ロ ジ ェ ク ト 名 「p_pbtutor_webdw」 を使用 し ます。
5
PowerBuilder 入門
まだ選択 さ れていない場合は、 [デー タ ベース プ ロ フ ァ イル] リ ス ト から
「EAS Demo DB V9」 を選択 し ます。
277
Web デー タ ウ ィ ン ド ウ コ ン テナの構築
6
最後のウ ィ ザー ド ページが表示 さ れる まで [次へ] を ク リ ッ ク し 、 以下
のデ フ ォル ト を受け入れてい き ます。
ウ ィ ザー ド オプ シ ョ ン
デ フ ォル ト 値
EAServer プ ロ フ ァ イ ルの
選択
local (今追加 し たプ ロ フ ァ イ ル)
EAServer コ ン テナ と パ ッ
ケージ名の指定
pbtutor_component
イ ン ス タ ン ス プー リ ン グ
オプシ ョ ンの指定
その他の コ ン ポーネ ン ト
オプシ ョ ンの指定
動的 ラ イ ブ ラ リ オプシ ョ
ンの指定
サポー ト す る
pbtutor_package
指定な し
統合動的 ラ イ ブ ラ リ (PBD) の構築 (選択)
統合 PBD に参照 さ れないオブジ ェ ク ト を
含め る (選択)
pbtutor.pbd (統合化 PBD フ ァ イ ル名)
7
[完了] ボ タ ン を ク リ ッ ク し ます。
p_pbtutor_webdw プ ロ ジ ェ ク ト がプ ロ ジ ェ ク ト ペ イ ン タ に表示 さ
れ ます。
8
メ ニ ュ ー バーの [デザイ ン|プ ロ ジ ェ ク ト の配布] を選択 し ます。
こ れに よ り 、 ロ ーカル マシ ン で稼働 し てい る EAServer のパ ッ ケー
ジお よ び コ ン ポーネ ン ト と し て、 プ ロ ジ ェ ク ト を構築 し て配布 し
ま す。 こ の コ ン ポーネ ン ト は、 DataWindow::HTMLGenerator90 イ
ン タ フ ェ ー ス を使用 し た カ ス タ ム の Web デー タ ウ ィ ン ド ウ コ ン
テナです。
9
278
メ ニ ュ ー バーか ら [フ ァ イル|閉 じ る] を選択 し て、 プ ロ ジ ェ ク ト を閉
じ ます。
プ ロ ジ ェ ク ト フ ァ イルを保存する よ う に要求 さ れた ら 、 [はい] を選択 し
ます。
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
Web デー タ ウ ィ ン ド ウ コ ン テナを使用し ての Web ページ
の作成
現在の学習個所
EAServer 接続プ ロ フ ァ イ ルのセッ ト ア ッ プ
Web データ ウィ ン ド ウ コ ン テ ナの構築
> Web データ ウィ ン ド ウ コ ン テ ナを 使用し ての Web ページ の作成
データ ウィ ン ド ウ Web ページ へのほかのコ ン ト ロ ールの追加
既存の Web ページ へのデータ ウィ ン ド ウの追加
商品情報の検索機能の追加
Web ア プ リ ケーシ ョ ン のテ スト と 実行
こ の レ ッ ス ン では、先ほ ど作成 し た Web デー タ ウ ィ ン ド ウ コ ン テナを
使用 し て、 新規の Web ページ Addproduct.htm を作成 し ます。
1
シ ス テム ツ リ ーの Customer タ ーゲ ッ ト を右ク リ ッ ク し て、 ポ ッ プ ア ッ
プ メ ニ ュ ーから [新規作成] を選択 し ます。
2
新規作成 ダ イ ア ログボ ッ ク スで [Web] タ ブ を ク リ ッ ク し ます。
[Web/JSP デー タ ウ ィ ン ド ウ ページ] ア イ コ ン を ダブルク リ ッ ク し 、ウ ィ
ザー ド の先頭ページ で [次へ] を ク リ ッ ク し ます。
[新規 HTML フ ァ イ ルの指定] ページが表示 さ れます。
3
[ タ イ ト ル] テキス ト ボ ッ ク スに 「Addproduct」 と 入力 し て、 [次へ] を
2 回ク リ ッ ク し ます。
フ ァ イ ル名は、 ページ タ イ ト ルに入力 し たテ キ ス ト に自動的に変
わ り ます。 こ れで Web ページ フ ァ イ ルの名前が Addproduct.htm に
な り ま し た。 こ の レ ッ ス ン では、 新規のページに対 し て ス タ イ ル
シー ト は指定 し ません。
4
「ロー カル の EAServer プ ロ フ ァ イル」 を まだ選択 し ていなければ選択 し
てか ら、 [次へ] を ク リ ッ ク し ます。
[Web DW コ ン ポーネ ン ト 形式の選択] ページが表示 さ れ ます。
5
[Web DW コ ン テナ] ラ ジオボ タ ン を選択 し 、 [次へ] を ク リ ッ ク し ます。
[EAServer デー タ ウ ィ ン ド ウ コ ン ポーネ ン ト の選択] ページが表
示 さ れます。
PowerBuilder 入門
279
Web デー タ ウ ィ ン ド ウ コ ン テナ を使用 し ての Web ページの作成
6
ロー カル サーバの下の項目を展開 し ます。
pbtutor_package の下で、 pbtutor_component を選択 し ます。
7
[次へ] を ク リ ッ ク し ます。
[デー タ ウ ィ ン ド ウ オプジ ェ ク ト の選択] ページが表示 さ れます。
8
280
d_product を選択 し ます。
PowerBuilder
レ ッ ス ン 13
9
Web デー タ ウ ィ ン ド ウの使い方
[次へ] を ク リ ッ ク し ます。
[完了] を ク リ ッ ク し て選択内容を受け入れます。
Addproduct.htm Web ページがページ編集ビ ューに表示 さ れます。
PowerBuilder 入門
281
デー タ ウ ィ ン ド ウ Web ページへのほかの コ ン ト ロールの追加
デー タ ウ ィ ン ド ウ Web ページへのほかの コ ン ト ロールの
追加
現在の学習個所
EAServer 接続プ ロ フ ァ イ ルのセッ ト ア ッ プ
Web データ ウィ ン ド ウ コ ン テ ナの構築
Web データ ウィ ン ド ウ コ ン テ ナを 使用し て の Web ページ の作成
> データ ウィ ン ド ウ Web ページ へのほかのコ ン ト ロ ールの追加
既存の Web ページ へのデータ ウィ ン ド ウの追加
商品情報の検索機能の追加
Web ア プ リ ケーシ ョ ン のテ スト と 実行
こ こ では、 商品情報テーブルに行を挿入 し てデー タ ベー ス を更新す る
ためのボ タ ン コ ン ト ロ ールを追加 し て、 Addproduct.htm ページ を完成
せ さ ます。 ま た、 Product.htm ページにハ イ パー リ ン ク を追加 し ます。
ページ を完成 さ せ る には、 次の作業を行い ます。
•
新規の商品情報ボタ ン の有効化
•
データ ベース を 更新する ボタ ン の追加
• [ 商品情報] ページ へのハイ パーリ ン ク の追加
新規の商品情報ボ タ ンの有効化
こ こ ま での作業に よ っ て、 Addproduct.htm ページには Web デー タ ウ ィ
ン ド ウ が含まれてい ます。こ の ス テ ッ プでは、テ キ ス ト と リ ン ク をデー
タ ベー スへ追加 し て、 デー タ ベースへの商品情報の追加 と 、 追加 し た
情報 を ユーザが参照で き る Product.htm ページへの リ ン ク を 作成 し ま
す。
1
Addproduct.htm ページ を右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーか ら
[ページ プ ロパテ ィ ] を選択 し ます。
[4GL Web サーバ サイ ド イ ベン ト モデルを使用する] チ ェ ッ ク ボ ッ ク ス
を オ ンに し て、 [OK] を ク リ ッ ク し ます。
こ れで こ のページ は 4GL を 使用で き る よ う に な り ま し た。 し た
がっ て、 サーバ サ イ ド イ ベン ト の コ ーデ ィ ン グ、 お よ び Web ペー
ジ上の コ ン ト ロ ールへの変数 と コ ン ポーネ ン ト のバ イ ン ド がで き
ます。
282
PowerBuilder
レ ッ ス ン 13
2
Web デー タ ウ ィ ン ド ウの使い方
デー タ ウ ィ ン ド ウの左下隅に カ ー ソルを置き、 〔Enter〕 を押 し ます。
Web デー タ ウ ィ ン ド ウの上の段落に、 次のテキス ト を挿入 し ます。
こ こ を ク リ ッ ク し て商品情報を追加 し ます
次に、 デー タ ウ ィ ン ド ウ に空白行を表示す る 新 し いボ タ ン を、 こ
のテ キ ス ト の下に追加 し ます。
3
このテキス ト の後ろ で 〔Enter〕 を押 し ます。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | コ マ ン ド ボ タ ン] を選
択 し ます。
[Button プ ロ パテ ィ ] ページが表示 さ れます。
4
[ボ タ ンの種類] ド ロ ッ プダウン リ ス ト ボ ッ ク スか ら 「Button」 を選択 し
ます。
[ボ タ ンの名前] テキス ト ボ ッ ク スに 「cb_addproduct」 と 入力 し ます。
[ ラ ベル] テキス ト ボ ッ ク スに 「商品情報の追加」 と 入力 し ます。
5
[OK] を ク リ ッ ク し て、Button プロ パティ ダイ アログボッ ク スを 閉じ ます。
ス ク リ プ ト エデ ィ タ の最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スから
「cb_addproduct」 を選択 し ます。
ページ編集ビ ュ ー内の [商品情報の追加] ボ タ ン を ク リ ッ ク す る
と 、 ス ク リ プ ト エデ ィ タ の最初の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス
に 「cb_addproduct」 が表示 さ れます。
6
中央の ド ロ ッ プダウン リ ス ト ボ ッ ク スから 「ServerAction()」 を選択 し
ます。
次のス ク リ プ ト を入力 し ます。
webDW.InsertRow(0);
エ ン ド ユーザが Web ページ上の [商品情報の追加] ボ タ ン を ク
リ ッ ク す る と 、 ユーザが入力で き る 空のテ キ ス ト ボ ッ ク ス を持つ
Web デー タ ウ ィ ン ド ウ が表示 さ れます。
7
ページ編集ビ ュ ーで 「商品情報の追加」 ボ タ ンの右に カ ー ソ ルを置いて、
〔Enter〕 を押 し ます。
次のテキス ト を入力 し ます。
商品を追加 し て く だ さ い。 すべてのテキス ト ボ ッ ク スに情報を入力
し てか ら、 [デー タ ベースの更新] を ク リ ッ ク し て く だ さ い。
PowerBuilder 入門
283
デー タ ウ ィ ン ド ウ Web ページへのほかの コ ン ト ロールの追加
8
Web デー タ ウ ィ ン ド ウ を右 ク リ ッ ク し ます。
ド ロ ッ プ ダウン リ ス ト ボ ッ ク スから 「Sybase Web DataWindow DTC 9.0
プ ロパテ ィ 」 を選択 し ます。
9
[ コ ン ト ロール] タ ブ を ク リ ッ ク し 、 [重み] パネルの横の [上書き] ボ ッ
ク ス を チ ェ ッ ク し ます。
[重み] パネルの項目をすべて選択 し ます。
生成 さ れ る HTML ページには、 選択 し た ク ラ イ ア ン ト サ イ ド 機能
をすべてサポー ト す る JavaScript コ ー ド が含まれ ます。
生成 さ れるページのサイ ズ
選択 し た各機能に対応す る JavaScript コ ー ド が生成 さ れます。必要
な機能だけ を選択すれば、 Web ページのサ イ ズ を小 さ く で き ます。
10 [ページあた り の行数] フ ィ ール ド の [上書き] チ ェ ッ ク ボ ッ ク ス を オ ン
に し ます。
[ぺージあた り の行数] ボ ッ ク スに 「1」 と 入力 し ます。
こ れに よ っ て、 表示 さ れ る 商品情報の量が 1 レ コ ー ド に制限 さ れ
ます。
11 [検索] タ ブ を ク リ ッ ク し ま す。 [自動検索] オ プ シ ョ ン を オ フ に し て、
[OK] を ク リ ッ ク し ます。
12 ペ イ ン タ バーの [保存] ボ タ ン を ク リ ッ ク し ます。
284
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
デー タ ベース を更新するボ タ ンの追加
商品情報を追加 し た ら デー タ ベー ス を更新 し な ければな ら な いので、
こ の ス テ ッ プではデー タ ベース を更新す る ボ タ ン を追加 し ます。
1
Web デー タ ウ ィ ン ド ウの右下の段落に カ ー ソ ルを置き、 〔Enter〕 を押 し
ます。
メ ニュ ー バーから [挿入|フ ォ ーム フ ィ ールド |コ マン ド ボタ ン ] を 選択
し ます。
Button プ ロ パテ ィ ページが表示 さ れます。
2
[ボ タ ンの種類] ド ロ ッ プダウン リ ス ト ボ ッ ク スか ら 「Button」 を選択 し
ます。
[名前] テキス ト ボ ッ ク スに 「cb_update」 と 入力 し ます。
[ ラ ベル] テキス ト ボ ッ ク スに 「デー タ ベースの更新」 と 入力 し ます。
3
[OK] を ク リ ッ ク し て、Button プロ パティ ダイ アログボッ ク スを 閉じ ます。
4
ス ク リ プ ト エデ ィ タ の最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スで
「cb_update」 を選択 し ます。
中央の ド ロ ッ プダウン リ ス ト ボ ッ ク スか ら 「ServerAction()」 を選択 し
ます。
5
ス ク リ プ ト エデ ィ タ ウ ィ ン ド ウに次のよ う に入力 し ます。
webDW.Update();
Web ページか ら [デー タ ベー ス の更新] ボ タ ン を押す と 、 エ ン ド
ユーザが入力 し た情報がデー タ ベース に追加 さ れます。
[商品情報] ページへのハイパー リ ン ク の追加
こ こ では、 商品情報が更新 さ れた こ と を ユーザが確認で き る よ う に、
Product.htm ページに リ ン ク を追加 し ます。
1
PowerBuilder 入門
ページ編集ビ ュ ーで [デー タ ベースの更新] ボ タ ンの右に カ ー ソ ルを置い
て、 〔Enter〕 を押 し ます。
[書式|ハイパー リ ン ク ] を選択 し ます。
285
デー タ ウ ィ ン ド ウ Web ページへのほかの コ ン ト ロールの追加
2
[ リ ン ク 文字列] テキス ト ボ ッ ク スに 「商品情報」 と 入力 し ます。
[行先] テキス ト ボ ッ ク スの横の参照 ([...]) ボ タ ン を ク リ ッ ク し ます。
すで に作成 さ れ た Web ペー ジ の タ ーゲ ッ ト リ ス ト を 表示す る
ウ ィ ン ド ウ が開 き ます。
3
商品情報ページ (Product.htm) を選択 し ます。
4
[OK] を 2 回ク リ ッ ク し て Web ページにハイパー リ ン ク を追加 し ます。
「商品情報」 が、 下線付 き のハ イ パー リ ン ク と し て Addproduct.htm
ページに表示 さ れます。
5
286
メ ニ ュ ー バーか ら [フ ァ イル|保存] を選択 し ます。
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
既存の Web ページへのデー タ ウ ィ ン ド ウの追加
現在の学習個所
EAServer 接続プ ロ フ ァ イ ルのセッ ト ア ッ プ
Web データ ウィ ン ド ウ コ ン テ ナの構築
Web データ ウィ ン ド ウ コ ン テ ナを 使用し ての Web ページ の作成
データ ウィ ン ド ウ Web ページ へのほかのコ ン ト ロ ールの追加
> 既存の Web ページ へのデータ ウィ ン ド ウの追加
商品情報の検索機能の追加
Web ア プ リ ケーシ ョ ン のテ スト と 実行
こ の ス テ ッ プでは、 既存の Web ページにデー タ ウ ィ ン ド ウ を追加 し ま
す。 こ のデー タ ウ ィ ン ド ウ の [自動検索] チ ェ ッ ク ボ ッ ク ス を オ フ に
し ます。 こ れに よ っ て、 Web デー タ ウ ィ ン ド ウ にア ク セ スす る ス ク リ
プ ト がページに自動挿入 さ れな く な り ま す。 次に、 特定のデー タ ウ ィ
ン ド ウ 検索引数を Web ページ上のパ ラ メ ー タ に リ ン ク し 、 そのデー タ
ウ ィ ン ド ウ を プ ロ グ ラ ム に よ っ て検索 し ます。
1
Product.htm フ ァ イルを開き ます。
2
商品情報段落の末尾に カ ー ソルを置き、 〔Enter〕 を押 し ます。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド |デー タ ウ ィ ン ド ウ] を
選択 し ます。
Sybase Web デー タ ウ ィ ン ド ウ DTC プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク
ス が表示 さ れます。
3
デー タ ウ ィ ン ド ウ ページ上の [PowerBuilder ラ イ ブ ラ リ ] ラ ジオボ タ ン
を選択 し ます。
[デー タ ウ ィ ン ド ウ ラ イ ブ ラ リ ] テキス ト ボ ッ ク スの横の参照 ([...]) ボ
タ ン を ク リ ッ ク し ます。
4
「tutor_pb.pbl」 を選択 し 、 [開 く ] を ク リ ッ ク し ます。
tutor_pb.pbl ラ イ ブ ラ リ へのパス が、 Sybase Web デー タ ウ ィ ン ド ウ
DTC プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス の [ ラ イ ブ ラ リ ] テ キ ス ト
ボ ッ ク ス に表示 さ れ ます。
5
PowerBuilder 入門
[ス ク リ プ ト 内に絶対パス を生成] チ ェ ッ ク ボ ッ ク ス を オ ンに し ます。
[デー タ ウ ィ ン ド ウ] ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで 「d_product」 を
選択 し ます。
287
既存の Web ページへのデー タ ウ ィ ン ド ウの追加
こ こ ではチ ュ ー ト リ アルのため、絶対パ ス の生成を使用 し ます。本
番環境では、 相対パ ス を使用す る 必要があ り ます。
6
[接続] タ ブ を ク リ ッ ク し ます。
ド ロ ッ プ ダウン リ ス ト ボ ッ ク スか ら 「EAS Demo DB V9」 を選択 し ます。
7
[検索] タ ブ を ク リ ッ ク し ます。
[自動検索] オプ シ ョ ン を オ フ に し て、 [OK] を ク リ ッ ク し ます。
ボ タ ン の Clicked イ ベ ン ト が発生 し た と き に製品デー タ を検索す
る ス ク リ プ ト は、 後で作成 し ます。
8
ス ク リ プ ト エデ ィ タ の最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スか ら
「cb_addproduct」 を選択 し ます。
2 番目の ド ロ ッ プダウン リ ス ト ボ ッ ク スで 「ServerAction()」 を選択 し ま
す。
9
ス ク リ プ ト エデ ィ タ の中を右 ク リ ッ ク し ます。
ド ロ ッ プ ダウン リ ス ト ボ ッ ク スか ら 「 リ ダ イ レ ク ト の挿入」 を選択 し ま
す。
10 [ロ ケーシ ョ ン] テキス ト ボ ッ ク スの横の参照 ( [...] ) ボ タ ン を ク リ ッ ク
し ます。
[コ ン テ ン ツ Customer] リ ス ト ボ ッ ク スか ら 「Addproduct.htm」 を選
択 し ます。
こ のページか ら 新 し い商品ページへの リ ン ク が追加 さ れます。
288
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
11 [OK] を 2 回 ク リ ッ ク し ます。
12
PowerBuilder 入門
メ ニ ュ ー バーから [フ ァ イル|保存] を選択 し ます。
289
商品情報の検索機能の追加
商品情報の検索機能の追加
現在の学習個所
EAServer 接続プ ロ フ ァ イ ルのセッ ト ア ッ プ
Web データ ウィ ン ド ウ コ ン テ ナの構築
Web データ ウィ ン ド ウ コ ン テ ナを 使用し て の Web ページ の作成
データ ウィ ン ド ウ Web ページ へのほかのコ ン ト ロ ールの追加
既存の Web ページ へのデータ ウィ ン ド ウの追加
> 商品情報の検索機能の追加
Web ア プ リ ケーシ ョ ン のテ スト と 実行
こ の ス テ ッ プでは、 Product.htm ページに検索関数を追加 し ます。 こ れ
に よ っ て、デー タ ベース内の製品の商品 ID を要求すればページ上に商
品情報を表示で き る よ う にな り ます。
1
ページ編集ビ ュ ー内で Product.htm が開いていない場合は開き ます。
Web デー タ ウ ィ ン ド ウの上の段落の末尾に カ ー ソ ルを置き、 〔Enter〕 を
押 し ます。
2
メ ニ ュ ー バーか ら [テーブル|テーブル ウ ィ ザー ド ] を選択 し ます。
[テーブル当た り の行数] に 「1」 と 入力 し て、 [次へ] を ク リ ッ ク し ます。
[テーブル当た り の列数] に 「2」 と 入力 し ます。
[完了] を ク リ ッ ク し 、 [OK] を ク リ ッ ク し ます。
Web ページ上にテーブルが表示 さ れます。
290
3
1 番目のカ ラ ムの 「Cell」 と い う 単語をハイ ラ イ ト 表示 し 、 「商品 ID で
商品情報を表示」 と 入力 し ます。
4
2 番目のカ ラ ムの 「Cell」 と い う 単語をハイ ラ イ ト 表示 し ます。
[挿入|フ ォ ーム フ ィ ール ド |シ ングルラ イ ン テキス ト ] を選択 し 、[OK]
を ク リ ッ ク し ます。
PowerBuilder
レ ッ ス ン 13
5
Web デー タ ウ ィ ン ド ウの使い方
テーブルの後に カ ー ソルを置き ます。
〔Enter〕 を 1 回押 し て次の行に移動 し ます。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | コ マ ン ド ボ タ ン] を選
択 し ます。
Button プ ロ パテ ィ ページが表示 さ れます。
6
[ボ タ ンの種類] から 「Button」 を選択 し ます。
[名前] テキス ト ボ ッ ク スに 「cb_get」 と 入力 し ます。
[ ラ ベル] テキス ト ボ ッ ク スに 「商品 ID」 と 入力 し て、 [OK] を ク リ ッ ク
し ます。
7
ス ク リ プ ト エデ ィ タ の最初の ド ロ ッ プダウン リ ス ト ボ ッ ク スで
「cb_get」 を選択 し ます。
中央の ド ロ ッ プ ダウ ン リ ス ト ボ ッ ク スか ら 「ServerAction()」 を選択 し
ます。
8
以下の コ ー ド を ス ク リ プ ト ウ ィ ン ド ウに追加 し ます。
dw_1.Reset();
dw_1.Retrieve(sle_1.value);
9
PowerBuilder 入門
メ ニ ュ ー バーから [フ ァ イル|保存] を選択 し ます。
291
Web ア プ リ ケーシ ョ ンのテ ス ト と 実行
Web ア プ リ ケーシ ョ ンのテ ス ト と 実行
現在の学習個所
EAServer 接続プ ロ フ ァ イ ルのセッ ト ア ッ プ
Web データ ウィ ン ド ウ コ ン テ ナの構築
Web データ ウィ ン ド ウ コ ン テ ナを 使用し て の Web ページ の作成
データ ウィ ン ド ウ Web ページ へのほかのコ ン ト ロ ールの追加
既存の Web ページ へのデータ ウィ ン ド ウの追加
商品情報の検索機能の追加
> Web ア プ リ ケーシ ョ ン のテ スト と 実行
こ の レ ッ ス ン では、 新 し い Web ページ を テ ス ト し 、 デー タ ベース に商
品を追加で き る こ と を確認 し ます。 商品を正 し く 追加で き た ら 、 [ ロ グ
イ ン] ページか ら 、 Web アプ リ ケーシ ョ ン全体を実行 し ます。
こ の練習では、 以下の操作を行い ます。
•
Addproduct.htm Web ページのテ ス ト
•
データ ベース への新し い商品の追加
•
Web ア プリ ケ ーシ ョ ン の実行
Addproduct.htm Web ページのテ ス ト
作成 し た Web アプ リ ケーシ ョ ン を テ ス ト す る 前に、 まず
Addproduct.htm Web ページ を テ ス ト し て、 商品を追加で き る か ど う か
を確認 し ます。 それには、 Customer タ ーゲ ッ ト の ス タ ー ト ページ を
一時的に変更し てから 、 Customer タ ーゲッ ト を 配布およ び実行し ま す。
1
シ ス テム ツ リ ーで、 Customer を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を選択 し ます。
タ ーゲ ッ ト Customer のプ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ
れ ます。
292
2
[実行 / デバ ッ グ] タ ブ を ク リ ッ ク し 、参照([...])ボ タ ン を ク リ ッ ク し ます。
URL の選択 ダ イ ア ログボ ッ ク スの [ タ ーゲ ッ ト ] タ ブが表示 さ れている
こ と を確認 し ます。
3
[ コ ン テ ン ツ Customer] リ ス ト ボ ッ ク スから 「Addproduct.htm」 を選
択 し 、 [OK] を 2 回ク リ ッ ク し ます。
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
4
Personal Web Server およびロー カルの EAServer が稼働 し ている こ と
を確認 し ます。
5
シ ス テム ツ リ ーで、 Customer を右 ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [配布] を選択 し ます。
Addproduct ページ を保存す るかど う かを問い合わせる メ ッ セージ ボ ッ
ク スが表示 さ れた ら、 [はい] を ク リ ッ ク し ます。
出力 ウ ィ ン ド ウ が開 き 、 タ ーゲ ッ ト の構築お よ び配布の進行状況
を知 ら せ る 情報 メ ッ セージが表示 さ れます。
6
メ ニ ュ ー バーから [実行|実行 Customer] を選択 し ます。
デフ ォ ル ト のブ ラ ウ ザが開 き ます。 URL ア ド レ ス ボ ッ ク ス には、
Addproduct.htm Web ページの フ ァ イ ル パ ス が入っ てい ます。
次の ス テ ッ プでは、 こ の Web ページ を使用 し て新 し い商品情報を
追加 し ます。
PowerBuilder 入門
293
Web ア プ リ ケーシ ョ ンのテ ス ト と 実行
デー タ ベースへの新 し い商品の追加
こ こ では、 新 し い商品情報を追加 し 、 こ の新 し い情報でデー タ ベー ス
を更新 し ます。
1
Addproduct.htm ページ上の[商品情報の追加]ボ タ ン を ク リ ッ ク し ます。
Web ページが再読み込み さ れ、 空の Web デー タ ウ ィ ン ド ウ 行が表
示 さ れ ます。
2
以下の情報を Web デー タ ウ ィ ン ド ウに入力 し ます。
テキス ト ボ ッ ク ス
商品 ID
値
9999
商品名
商品内容
シャツ
デニ ム シ ャ ツ
サイズ
色
L サイズ
Blue ( ド ロ ッ プダ ウ ン リ ス ト か ら 選択)
6
3000
在庫数
単価
3
[デー タ ベースの更新] ボ タ ン を ク リ ッ ク し ます。
こ れで こ の情報がデー タ ベー ス に入力 さ れ ま し た。 次に、 こ の情
報を確認 し ます。
294
PowerBuilder
レ ッ ス ン 13
4
Web デー タ ウ ィ ン ド ウの使い方
[商品情報] ハイパー リ ン ク を ク リ ッ ク し ます。
Product.htm ページが表示 さ れます。
5
[商品 ID で商品情報を表示] テキス ト ボ ッ ク スに 「9999」 と 入力 し ます。
[商品 ID] ボ タ ン を ク リ ッ ク し ます。
Product.htm Web ページが再読み込み さ れ、 前の練習で入力 し た商
品情報が表示 さ れます。
Web ア プ リ ケーシ ョ ンの実行
こ れで Web アプ リ ケーシ ョ ンの開発が完了 し ま し た。 こ の ス テ ッ プで
は、ス タ ー ト ページ を Login.htm ページに戻 し てか ら 、Web アプ リ ケー
シ ョ ン を再配布、 実行、 お よ びテ ス ト し ます。
1
シ ス テム ツ リ ーで、 Customer を右 ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を選択 し ます。
タ ーゲ ッ ト Customer のプ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ
れます。
PowerBuilder 入門
2
[実行 / デバ ッ グ] タ ブ を ク リ ッ ク し 、参照([...])ボ タ ン を ク リ ッ ク し ます。
URL の選択 ダ イ ア ログボ ッ ク スの [ タ ーゲ ッ ト ] タ ブ を ク リ ッ ク し ます。
3
[ コ ン テ ン ツ Customer] リ ス ト ボ ッ ク スから 「Login.htm」 を選択 し 、
[OK] を 2 回 ク リ ッ ク し ます。
295
Web ア プ リ ケーシ ョ ンのテ ス ト と 実行
4
Personal Web Server およびロー カルの EAServer が稼働 し ている こ と
を確認 し ます。
5
シ ス テム ツ リ ーで、 Customer を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [配布] を選択 し ます。
出力 ウ ィ ン ド ウ に配布の完了を知 ら せ る メ ッ セージが表示 さ れた
ら 、 アプ リ ケーシ ョ ン を実行 し ます。
6
パワーバーの [実行] ボ タ ン を ク リ ッ ク し ます。
デフ ォ ル ト のブ ラ ウ ザに Login.htm ページが表示 さ れます。
7
[名前] テキス ト ボ ッ ク ス と [パスワー ド ] テキス ト ボ ッ ク スの両方に自
分の名前を入力 し ます。
[ログ イ ン] ボ タ ン を ク リ ッ ク し ます。
ウ ェ ルカ ム ページが表示 さ れます。
296
PowerBuilder
レ ッ ス ン 13
8
Web デー タ ウ ィ ン ド ウの使い方
[商品情報を表示] ハイパー リ ン ク を ク リ ッ ク し ます。
商品情報 Web ページ (Product.htm) が表示 さ れます。
9
[商品の追加] ボ タ ン を ク リ ッ ク し ます。
Addproduct.htm ページが表示 さ れます。
PowerBuilder 入門
297
Web ア プ リ ケーシ ョ ンのテ ス ト と 実行
10 [商品情報の追加] ボ タ ン を ク リ ッ ク し ます。
空白行のあ る Web デー タ ウ ィ ン ド ウ が表示 さ れます。
11 以下の情報を Web デー タ ウ ィ ン ド ウに入力 し ます。
テキス ト ボ ッ ク ス
商品 ID
商品名
値
4321
T シャツ
商品内容
サイズ
コ ッ ト ン T シャツ
S サイズ
色
在庫数
White ( ド ロ ッ プダ ウ ン リ ス ト か ら 選択)
100
単価
1600
12 [デー タ ベースの更新] ボ タ ン を ク リ ッ ク し ます。
13 [商品情報] ハイパー リ ン ク を ク リ ッ ク し ます。
Product.htm ページが表示 さ れます。
14 [商品 ID で商品情報を表示] テキス ト ボ ッ ク スに 「4321」 と 入力 し ます。
[商品 ID] ボ タ ン を ク リ ッ ク し ます。
298
PowerBuilder
レ ッ ス ン 13
Web デー タ ウ ィ ン ド ウの使い方
Product.htm Web ページが再読み込み さ れ、 先ほ ど入力 し た製品情
報が表示 さ れます。
15 ブ ラ ウザを閉 じ ます。
PowerBuilder 入門
299
次のス テ ッ プについて
次のス テ ッ プについて
お疲れ さ ま で し た。 こ れでチ ュ ー ト リ アルの第 3 部が終了 し ま し た。
PowerBuilder での PowerDynamo Web タ ーゲ ッ ト の基本的な使い方を理
解で き た こ と と 思い ます。チ ュー ト リ アルの第 4 部では、JSP Web タ ー
ゲ ッ ト の作成お よ び使用方法について学習 し ます。
次に使用する Web
タ ーゲ ッ ト のマニ ュ ア
ル
こ のマニ ュ アルの冒頭の「 こ のマニ ュ アルについて」には、PowerBuilder
の各マニ ュ アルについての説明が記載 さ れてい ます。 Web タ ーゲ ッ ト
と Web デー タ ウ ィ ン ド ウ について さ ら に高度な開発技術 を学習す る
には、 以下のマニ ュ アルに進んで く だ さ い。
『Web タ ーゲ ッ ト と JSP タ ーゲ ッ ト での作業』
『Web お よ び JSP タ ーゲ ッ ト リ フ ァ レ ン ス』
『デー タ ウ ィ ン ド ウ プ ロ グ ラ マーズ ガ イ ド 』
『デー タ ウ ィ ン ド ウ リ フ ァ レ ン ス』
PowerBuilder のすべてのマ ニ ュ アルは、 ソ フ ト ウ ェ ア付属のテ ク ニ カ
ル ラ イ ブ ラ リ CD、 お よ びテ ク ニ カ ル ラ イ ブ ラ リ 製品マ ニ ュ ア ルの
Sybase Web サイ ト http://www.sybase.com/support/manuals/ (英語) を参照
し て く だ さ い。
Web タ ーゲ ッ ト のサ
ン プルの参照
300
PowerBuilder の コ ー ド 例 (Web タ ーゲ ッ ト のサ ン プルを含む) につい
て は、 Windows の ス タ ー ト メ ニ ュ ー で [プ ロ グ ラ ム | Sybase |
PowerBuilder 9.0 | PB 9 コー ド サン プル] を選択 し て参照 し て く だ さ
い。
PowerBuilder
第
4
部
JSP Web サービ ス ア プ リ ケー
シ ョ ンの作成
第 4 部は、JSP Web タ ーゲ ッ ト の使用方法を示 し たチ ュ ー
ト リ アルです。 JSP ク ラ イ ア ン ト か ら Web サービ ス を使
用する方法を手順を追っ て説明 し ます。
レ ッ ス ン 1 4
JSP Web サービス アプ リ ケーシ ョ ン
の作成
JSP タ ーゲ ッ ト は、 カ ス タ マ イ ズ さ れた コ マ ン ド ラ イ ン構成を用
いて、 任意の JSP 1.2 サーバに配布で き ます。 ただ し 、 EAServer や
Tomcat に配布す る場合は、 サーバへの接続情報を入力す る だけで
す。 こ のチ ュー ト リ アルでは、4GL JSP ページ を含む JSP Web サー
ビ ス アプ リ ケーシ ョ ン を作成 し 、 EAServer に配布 し ます。
こ の レ ッ ス ン では、 以下の項目について学習 し ます。
•
JSP タ ーゲッ ト の作成
•
簡単な JSP ア プリ ケ ーショ ン での Web サービ ス の利用
•
4GL JSP ア プリ ケ ーシ ョ ン での Web サービ ス の利用
所要時間
約 45 分
こ のチ ュ ー ト リ アルを開始
する前に
JSP Web サービ ス チ ュ ー ト リ アルでは、 ロ ーカル マシ ン に以下の
ソ フ ト ウ ェ アが イ ン ス ト ール さ れてい る 必要があ り ます。
•
EAServer 4.2 以降
•
Internet Explorer 6.0 以降
ま た、 PowerBuilder 内で EAServer 接続プ ロ フ ァ イ ルを セ ッ ト ア ッ
プす る 必要 も あ り ます。 EAServer プ ロ フ ァ イ ルのセ ッ ト ア ッ プに
ついては、 PowerDynamo Web タ ーゲ ッ ト のチ ュ ー ト リ アルで設定
し ま し た。 PowerDynamo Web タ ーゲ ッ ト のチ ュ ー ト リ アルを読み
飛ば し た人は、 275 ページの「 EAServer 接続プロ フ ァ イ ルのセッ
ト ア ッ プ」 の手順を実行 し て く だ さ い。
JSP Web サービ ス アプ リ ケーシ ョ ン を実行す る と き は、 イ ン タ ー
ネ ッ ト に接続 し て い る 必要が あ り ま す。 デザ イ ン 時には、 こ の
チ ュー ト リ アルで使用す る Web サービ ス定義言語 (WSDL) フ ァ
イ ル を ご 使用の ロ ーカ ル マ シ ン に コ ピ ー し ておけば、 イ ン タ ー
ネ ッ ト に接続 し てい る 必要はあ り ません。 WSDL フ ァ イ ルについ
ては、 こ の レ ッ ス ン で解説 し ます。
PowerBuilder 入門
303
JSP タ ーゲ ッ ト の作成
JSP タ ーゲ ッ ト の作成
現在の学習個所
> JSP タ ーゲッ ト の作成
簡単な JSP ア プ リ ケーシ ョ ン で の Web サービ ス の利用
4GL JSP アプ リ ケーシ ョ ン での Web サービ スの利用
PowerBuilder で JSP タ ーゲ ッ ト を作成す る には、 JSP タ ーゲ ッ ト ウ ィ
ザー ド を実行 し ます。
1
PowerBuilder で [フ ァ イル|ワー ク スペース を開 く ] を選択 し 、 Tutorial
フ ォルダに移動 し ます。
MyWorkspace.pbw を選択 し 、 [開 く ] を ク リ ッ ク し ます。
ク ラ イ ア ン ト / サーバま たは Web タ ーゲ ッ ト のチ ュー ト リ アルを
最近学習 し た場合は、 こ の ワ ー ク ス ペー ス がすでに開いてい る 可
能性があ り ま す。 最初のチ ュ ー ト リ アルを最近学習 し ていないた
め、MyWorkspace.pbw が見つか ら ない場合は、27 ページ の「 チュ ー
ト リ ア ルのセッ ト ア ッ プ」 の手順に従っ て く だ さ い。
2
パワーバーの [新規作成] ボ タ ン を ク リ ッ ク し ます。
新規作成 ダ イ ア ログボ ッ ク スの [ タ ーゲ ッ ト ] タ ブ を ク リ ッ ク し 、 [JSP
タ ーゲ ッ ト ] を選択 し ます。
[OK] を ク リ ッ ク し ます。
JSP Web タ ーゲ ッ ト ウ ィ ザー ド の紹介ページが表示 さ れます。
3
[次へ] を ク リ ッ ク し ます。
[新規 JSP タ ーゲ ッ ト の指定 ウ ィ ザー ド ] ページが表示 さ れます。
Web タ ーゲ ッ ト のデフ ォ ル ト 名は Target1 です。
4
Target1.pbt のかわ り に 「jspTutorial.pbt」 と 入力 し ます。
[次へ] を ク リ ッ ク す る と 、 ソ ース フ ォ ルダ名 と 構築フ ォ ルダ名が
上記の タ ーゲ ッ ト 名を反映 し て自動的に変更 さ れます。
304
PowerBuilder
レ ッ ス ン 14
5
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
[EAServer プ ロ フ ァ イルの選択] ページが表示 さ れる ま で [次へ] を ク
リ ッ ク し ます。
以下の項目についてデフ ォ ル ト の設定を その ま ま使用 し ます。
ウ ィ ザー ド オプ シ ョ ン
[配布構成の名前]
[説明]
[オブジ ェ ク ト モデル]
[JSP サーバ 一覧]
6
標準設定
jspTutorialDeployConfiguration1
[配布構成]
デフ ォ ル ト のオブジ ェ ク ト モデルを
使用する
EAServer
目的の EAServer プ ロ フ ァ イルが選択 さ れている こ と を確認 し ます。
PowerDynamo Web タ ーゲ ッ ト のチ ュ ー ト リ アルを終え てい る場合
は、 「local」 と い う 名前のプ ロ フ ァ イ ルを選択 し て く だ さ い。 こ の
プ ロ フ ァ イ ルは、 ロ ーカル マシ ンの名前をサーバ名 と し て使用 し
ま す。 EAServer プ ロ フ ァ イ ル がない場合は、 [キ ャ ン セル] を ク
リ ッ ク し て ウ ィ ザー ド を終了 し 、 275 ページ の「 EAServer 接続プ
ロ フ ァ イ ルのセッ ト ア ッ プ」 の手順を実行 し た後、 こ の レ ッ ス ン
を最初か ら や り 直 し て く だ さ い。
ウ ィ ザー ド の [EAServer プ ロ フ ァ イ ルの選択] ページ の [HTTP
Port] フ ィ ール ド には、 デフ ォ ル ト 値 と し て 8080 が入力 さ れてい
ます。 こ のポー ト 番号は変更 し ないで く だ さ い。 変更す る場合は、
Jaguar Manager で EAServer の HTTP リ ス ナ ポー ト も 変更 し なけれ
ばな り ません。
7
[JSP タ ーゲ ッ ト の作成準備完了] ページが表示 さ れる まで、 [次へ] を
ク リ ッ ク し ます。
以下の項目についてデフ ォ ル ト の設定を使用 し ます。
PowerBuilder 入門
ウ ィ ザー ド
オプ シ ョ ン
[配布対象]
デ フ ォル ト
[すべて配布ま たは、 配布 し ない]
[再構築]
[ ロ ーカル コ ピー フ ォ
ルダ]
[WAR フ ァ イ ル名]
[Incremental]
Program Files¥Sybase¥PowerBuilder 9.0¥Tutorial
¥jspTutorial¥jspTutorialDeployConfiguration1
jspTutorial.war
305
JSP タ ーゲ ッ ト の作成
8
[JSP タ ーゲ ッ ト の作成準備完了] ページの選択内容を確認 し ます。
[完了] を ク リ ッ ク し て選択内容を受け入れます。
jsp チ ュー ト リ アル タ ーゲ ッ ト 、 フ ァ イ ルを格納す るデ ィ レ ク ト リ
構造、 配布構成が作成 さ れ ま す。 シ ス テ ム ツ リ ーには、 ソ ー ス
フ ォ ルダ と 構築フ ォ ルダは表示 さ れ ま せんが、 ウ ィ ザー ド が作成
し た WEB-INF デ ィ レ ク ト リ と その 2 つのサブデ ィ レ ク ト リ 、お よ
び タ ーゲ ッ ト の web.xml フ ァ イ ルが表示 さ れます。
306
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
簡単な JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
現在の学習個所
JSP タ ーゲッ ト の作成
> 簡単な JSP アプ リ ケーシ ョ ン での Web サービ スの利用
4GL JSP ア プ リ ケーシ ョ ン で の Web サービ ス の利用
こ の レ ッ ス ン では、 簡単な JSP アプ リ ケーシ ョ ン を作成 し ます。 こ の
非 4GL アプ リ ケーシ ョ ンは ス タ ー ト ページ と タ ーゲ ッ ト ページか ら
成 り ます。 ス タ ー ト ページでは、 ページ パ ラ メ ー タ と し て渡す項目を
ド ロ ッ プダ ウ ン リ ス ト か ら 選択 し 、 タ ーゲ ッ ト ページでは Web サー
ビ ス を 呼 び 出 し ま す。 こ の レ ッ ス ン で は、 XMethods Web サ イ ト
www.xmethods.net (英語) で提供 さ れてい る 為替レー ト 計算 Web サー
ビ ス を利用 し ます。
•
JSP ア プリ ケ ーシ ョ ン の非 4GL ページ の作成
•
ア プリ ケ ーシ ョ ン のス タ ート ページを 完成さ せる
•
JSP Web サービ ス プロ キ シ ウ ィ ザード を 使用する
•
Web サービ ス への呼び出し の追加
•
ア プリ ケ ーシ ョ ン の構築、 配布、 実行
JSP ア プ リ ケーシ ョ ンの非 4GL ページの作成
こ のチ ュ ー ト リ アルの非 4GL 部分では、2 つのページ、すなわち ス タ ー
ト ページ と メ イ ン ページ を作成 し ます。 そ し て、 アプ リ ケーシ ョ ン の
メ イ ン ページにページ パ ラ メ ー タ を追加 し ます。 こ のパ ラ メ ー タ で、
ス タ ー ト ページか ら 送信 さ れた値を受け取 り ます。
1
メ ニ ュ ー バーから [フ ァ イル|新規作成] を選択 し 、 [Web] タ ブ を ク
リ ッ ク し ます。
新規作成 ダ イ ア ログボ ッ ク ス下部の [ タ ーゲ ッ ト ] ド ロ ッ プ ダウン リ ス
ト ボ ッ ク スで、 「jspTutorial」 が選択 さ れている こ と を確認 し ます。
ワ ー ク スペース内にほかの Web タ ーゲ ッ ト がなければ、 [Web] タ
ブ を ク リ ッ ク し た と き に 「jspTutorial」 が自動的に選択 さ れます。
2
[Web/JSP ページ] ア イ コ ン を選択 し て、 [OK] を ク リ ッ ク し 、 さ ら に
[次へ] を ク リ ッ ク し ます。
[新規 HTML フ ァ イ ルの指定] ページが表示 さ れます。
PowerBuilder 入門
307
簡単な JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
3
[ タ イ ト ル] テ キス ト ボ ッ ク ス に 「simplestart」 と 入力 し て、 [次へ]
を 4 回ク リ ッ ク し ます。
[フ ァ イ ル名] フ ィ ール ド の フ ァ イ ル名が、 simplestart.jsp に変わ り
ます。
残 り の ウ ィ ザー ド ページでは、 デフ ォ ル ト の設定を その ま ま受け
入れます。
4
[完了] ボ タ ン を ク リ ッ ク し ます。
jspTutorial タ ーゲ ッ ト 内に simplestart.jsp ページが作成 さ れ、
HTML エデ ィ タ 内に開 き ます。 こ のページは、 シ ス テ ム ツ リ ーの
jspTutorial タ ーゲ ッ ト の下に表示 さ れます。
5
手順 3 で入力する フ ァ イル名を simplestart から 「simple」 に変更 し て、
手順 1 ~ 4 を繰 り 返 し ます。
simple.jsp ページが作成 さ れます。 ページ編集ビ ュ ーに、 デフ ォ ル
ト テ キ ス ト と し て 「 こ こ にデー タ を置 き ます」 が表示 さ れ ます。
6
simple.jsp ページのデ フ ォル ト のテキス ト をハイ ラ イ ト 表示 し ます。
〔Enter〕 を押 し 、 新 し いテキス ト と し て 「通貨変換」 と 入力 し ます。
7
入力 し たテキス ト 内に カ ー ソ ルを置いて、 メ ニ ュ ー バーか ら [書式|段
落] を選択 し ます。
Paragraph ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
8
[段落ス タ イル] ド ロ ッ プダウン リ ス ト から 「見出 し 1」 を選択 し ます。
[テキス ト 配置] フ ィ ール ド か ら 「中央」 を選択 し て、 [OK] を ク リ ッ ク
し ます。
入力 し たテ キ ス ト が、見出 し 1 フ ォ ン ト ス タ イ ルで表示 さ れます。
9
308
テキス ト の末尾に カ ー ソ ルを置き、 〔Enter〕 を押 し ます。
「(Simple Version)」 と 入力 し ます。
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
次の レ ッ ス ン で、 こ のページの 4GL バージ ョ ン を作成 し ます。
ページ編集ビ ュ ーにパ ラ グ ラ フ記号が表示 さ れない場合は、 その
ページ を右 ク リ ッ ク し て、 ポ ッ プア ッ プ メ ニ ュ ーか ら 「非表示 タ
グ を表示」 を選択 し て く だ さ い。
10 ページ編集ビ ュ ーでこ のページを 右ク リ ッ ク し て、 ポッ プアッ プ メ ニュ ー
か ら [ページ プ ロパテ ィ ] を選択 し ます。
[パラ メ ー タ ] タ ブ を ク リ ッ ク し ます。
11 [パラ メ ー タ 名] カ ラムの下の最初の行を ク リ ッ ク し 、 「column_2」 と 入
力 し て、 [OK] を ク リ ッ ク し ます。
非 4GL ページのページ パ ラ メ ー タ にデ フ ォ ル ト 値を 入力す る こ
と は で き ま せん。 こ の チ ュ ー ト リ ア ル ア プ リ ケ ー シ ョ ン で は、
column_2 パ ラ メ ー タ を simplestart.jsp ページか ら simple.jsp ページ
に渡 し ます。
12 HTML エデ ィ タ ツールバーの [保存] ボ タ ン を ク リ ッ ク し ます。
PowerBuilder 入門
309
簡単な JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
ア プ リ ケーシ ョ ンのス タ ー ト ページ を完成 さ せる
こ こ では、 ド ロ ッ プダ ウ ン リ ス ト と [送信] ボ タ ン を追加 し て、
simplestart.jsp ページ を完成 さ せます。
1
PowerBuilder の [ウ ィ ン ド ウ] メ ニ ュ ーから simplestart.jsp ページ を
選択 し ます。
simplestart.jsp ページが、HTML エデ ィ タ 内で フ ォーカ ス さ れます。
simplestart.jsp ペー ジ を 閉 じ て し ま っ て い る 場合は、 シ ス テ ム ツ
リ ー内で simplestart.jsp を ダ ブル ク リ ッ ク し て再度開い て く だ さ
い。
2
デ フ ォル ト のテキス ト をハイ ラ イ ト 表示 し て、 〔Enter〕 を押 し ます。
ページ編集ビ ュ ーまたはソ ース ビ ュ ー内に以下の行を直接入力 し ます。
出張予定の国を選択 し て く だ さ い。
3
テキス ト を入力 し た ら 〔Enter〕 を押 し ます。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | リ ス ト ボ ッ ク ス] を選
択 し ます。
4
[サーバに送る名前] テキス ト ボ ッ ク スに 「country_2」 と 入力 し ます。
5
[オ プ シ ョ ン] タ ブ を ク リ ッ ク し 、 以下の表示テキス ト と 値を 入力 し て、
[OK] を ク リ ッ ク し ます。
テキス ト
中国
値
china
フランス
ド イツ
euro
euro
イギ リ ス
シ ン ガポール
united kingdom
singapore
リ ス ト ボ ッ ク ス が ペー ジ に 追加 さ れ、 開 き FORM タ グ と 閉 じ
FORM タ グで囲ま れます。
6
こ の リ ス ト ボ ッ ク スの後、 閉 じ FORM タ グの前に カ ー ソ ルを置き ます。
〔Enter〕 を押 し ます。
こ の操作は、 ページ編集ビ ュ ーま たは ソ ース ビ ュ ーで行 う こ と が
で き ま す。 ページに追加す る [送信] ボ タ ン は、 こ の ド ロ ッ プダ
ウ ン リ ス ト と 同 じ FORM タ グ内に存在 し なければな り ません。
310
PowerBuilder
レ ッ ス ン 14
7
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
以下のテキス ト を入力 し て 〔Enter〕 を押 し ます。
[ ク エ リ 送信] ボ タ ン を押す と 、 選択 し た国の基本通貨の米国 ド ルに
対する為替レー ト が検索 さ れます。
8
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | コ マ ン ド ボ タ ン] を選
択 し 、 [OK] を ク リ ッ ク し ます。
[送信] ボ タ ン には、 デフ ォ ル ト の ラ ベル 「 ク エ リ 送信」 が付け ら
れ ます。 simple.jsp ページにボ タ ン名を渡す必要はないので、 ボ タ
ン に名前を付け る 必要はあ り ません。 ただ し 、 ド ロ ッ プダ ウ ン リ
ス ト の値は渡す必要があ り ます。
9
こ のボタ ン ま たはド ロ ッ プ ダウン リ スト を 右ク リ ッ ク し て、ポッ プ ア ッ プ
メ ニ ュ ーか ら [ フ ォ ーム プ ロパテ ィ ] を選択 し ます。
Form Properties ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
10 [ フ ォ ーム情報の送 り 先 URL] テキス ト ボ ッ ク スに、 「simple.jsp」 と
入力 し ます。
入力す る か わ り に、 同 テ キ ス ト ボ ッ ク ス の横の参照 ボ タ ン を ク
リ ッ ク し て、 URL の選択 ダ イ ア ロ グ ボ ッ ク ス を開 き 、 [ タ ーゲ ッ
ト ] タ ブで 「simple.jsp」 を選択 し て [OK] を ク リ ッ ク す る こ と も
で き ます。
11 [送信 メ ソ ッ ド ] ド ロ ッ プ ダウン リ ス ト ボ ッ ク スで 「GET」 を選択 し て
[OK] を ク リ ッ ク し ます。
送信 メ ソ ッ ド を POST の ま ま にす る と 、 [ ク エ リ 送信] ボ タ ン を ク
リ ッ ク し た と き simple.jsp ページにア ク セ スす る ための URL にパ
ラ メ ー タ が含まれません。
PowerBuilder 入門
311
簡単な JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
ポ ッ プア ッ プ メ ニ ュ ーか ら 「非表示 タ グ を表示」 を選択 し なか っ
た場合、 simplestart.jsp ページはページ編集ビ ュ ー内で次の よ う に
表示 さ れ ます。
[ ク エ リ 送信]ボ タ ン が FORM タ グの内側にあ る こ と を確認 し て く
だ さ い。
HTML エデ ィ タ の [プ レ ビ ュ ー] タ ブ を ク リ ッ ク す る と 、
simplestart.jsp が ク ラ イ ア ン ト のブ ラ ウ ザ内で ど の よ う に表示 さ れ
る か を確認で き ます。 プ レ ビ ューでは、 ページ編集ビ ュ ーに表示
さ れていた FORM タ グは表示 さ れ ません。
12 変更内容を simplestart.jsp ページに保存 し ます。
[フ ァ イル|閉 じ る] を選択 し て、 simplestart.jsp ページ を閉 じ ます。
simple.jsp ページは、 HTML エデ ィ タ 内で開いた ま ま です。
JSP Web サービ ス プ ロキシ ウ ィ ザー ド を使用する
こ こ では、 JSP タ ーゲ ッ ト に Web サービ ス を追加 し ます。
1
シ ス テム ツ リ ーの jspTutorial タ ーゲ ッ ト を右 ク リ ッ ク し て、 ポ ッ プ ア ッ
プ メ ニ ュ ーか ら [新規作成] を選択 し ます。
まだ表示 さ れていない場合は、 [Web] タ ブ を ク リ ッ ク し ます。
2
[JSP Web サービ ス プ ロキシ ウ ィ ザー ド ] を ダブルク リ ッ ク し て、 [次
へ] を ク リ ッ ク し ます。
ウ ィ ザー ド の [WSDL フ ァ イ ルの選択] ページが表示 さ れます。
312
PowerBuilder
レ ッ ス ン 14
3
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
以下の URL を [WSDL フ ァ イル名] テキス ト ボ ッ ク スに入力 し て、 [次
へ] を ク リ ッ ク し ます。
http://www.xmethods.net/sd/2001/CurrencyExchangeSer
vice.wsdl
ウ ィ ザー ド の [Select Services] ページに、 入力 し た WSDL フ ァ イ
ルに記述 さ れてい る Web サービ ス が表示 さ れます。
4
ウ ィ ザー ド の [プ ロキシ の作成準備完了] ページに達する まで [次へ] を
ク リ ッ ク し ます。
以下のデフ ォ ル ト 情報を受け入れます。
ウ ィ ザー ド オプ シ ョ ン
[サービ ス]
5
[操作名]
[パ ラ メ ー タ 名]
デ フ ォル ト 設定
CurrencyExchangeService (WSDL フ ァ イ ルに
記述 さ れてい る 唯一のサービ ス)
getRate
CurrencyExchangeService_getRate_returnValue
[ポー ト 名]
[パ ッ ケージ名]
CurrencyExchangePort
CurrencyExchangeService
[TLD フ ァ イ ル名]
[TLD フ ァ イ ルを カ ス タ
ム タ グ 検索パ ス に追
加]
CurrencyExchangeService.tld
[JAR フ ァ イ ル名]
[JAR フ ァ イ ルを PB
Java ク ラ ス パ ス に追加]
CurrencyExchangeService.jar
Selected
選択 さ れてい る
[完了] ボ タ ン を ク リ ッ ク し ます。
タ ーゲ ッ ト の WEB-INF デ ィ レ ク ト リ のサブデ ィ レ ク ト リ に以下
の フ ァ イ ルが作成 さ れ ます。
サブデ ィ レ ク ト リ
Classes
作成 さ れる フ ァ イル
CurrencyExchangeService.wsdl、 esdweblogger.props、
syuproxy.props、 user.encoding.props
Lib
CurrencyExchangeService.jar、 log4j-1.2.3.jar、
swsclient.jar
Tlds
CurrencyExchangeService.tld
CurrencyExchangeService.tld フ ァ イ ルがカ ス タ ム の タ グ ラ イ ブ ラ リ
検索パ ス に追加 さ れ ます。 ま た、 シ ス テ ム ツ リ ーの [ コ ン ポーネ
ン ト ] タ ブに も 追加 さ れ ます。
PowerBuilder 入門
313
簡単な JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
Web サービ スへの呼び出 し の追加
こ こ では、 TLD を simple.jsp で使用す る ためのページ デ ィ レ ク テ ィ ブ
を追加 し ます。 まず、 Web サービ ス の getRate ク ラ ス の引数を定義す る
カ ス タ ム タ グ を追加 し 、 次に、 その Web サービ ス に よ っ て計算 さ れた
変換レー ト を返すサーバ ス ク リ プ ト を追加 し ます。
1
プ ロパテ ィ ツ リ ーの [コ ンポーネ ン ト ] タ ブ を ク リ ッ ク し ます。
2
カ ス タ ム タ グ ラ イ ブ ラ リ の リ ス ト を展開 し て、
CurrencyExchangeService.tld を表示 し ます。
3
CurrencyExchangeService.tld フ ァ イルを、 HTML エデ ィ タ 内の
simple.jsp ページに ド ラ ッ グ し ます。
TLD フ ァ イ ルの省略名 と し て使用す る 接頭辞を入力す る よ う に求
め る ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
4
接頭辞 と し て 「cur」 と 入力 し 、 [OK] を ク リ ッ ク し ます。
ページに taglib デ ィ レ ク テ ィ ブが追加 さ れます。
5
シ ス テム ツ リ ーの [コ ンポーネ ン ト ] タ ブ で、
CurrencyExchangeService.tld フ ァ イルを展開 し ます。
6
getRate ク ラ スを 、 ページ編集ビ ュ ーの simple.jsp ページの下部にド ラ ッ
グ し ます。
cur:getRate プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
7
314
リ ス ト さ れた各属性の値カ ラ ムに以下の値を入力 し て、 [OK] を ク リ ッ ク
し ます。
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
属性名
country1
値
usa
country2
<%= request.getParameter ("country_2") %>
ページ編集ビ ュ ーの simple.jsp ページに、 カ ス タ ム の JSP ア ク シ ョ
ン が追加 さ れた こ と を 示す <ctl:/> 記号が表示 さ れ ま す。 ソ ー ス
ビ ュ ーには、 以下に示すカ ス タ ムのア ク シ ョ ン タ グの コ ー ド が表
示 さ れ ます。
<cur:getRate country1="usa" country2=
'<%= request.getParameter ("country_2") %>' />
8
ソ ース ビ ュ ーに表示 さ れたページの末尾に以下の コ ー ド を入力 し ます。
<P> 米国 1 ド ルに対する
&nbsp;<%= request.getParameter ("country_2") %>
&nbsp; 通貨の変換レー ト :&nbsp;</P>
こ の行には、 サーバ ス ク リ プ ト と HTML ス ク リ プ ト の両方が含ま
れてい ます。 HTML ス ク リ プ ト に現れ る "&nbsp;" は、 その位置に
改行な し の スペース を挿入 し ます。
9
ページ編集ビ ュ ーに切 り 替えて、 入力 し た行の <%=> 記号を ク リ ッ ク し
ます。
ス ク リ プ ト ビ ューの最初の ド ロ ッ プダ ウ ン リ ス ト に
「ServerScript[0]」 が表示 さ れ ます。 こ のサーバ ス ク リ プ ト は、
ソ ース ビ ュ ーに入力 し た ス ク リ プ ト です。
10 ページ編集ビ ュ ーで、 入力 し た行の末尾に カ ー ソルを置き ます。
ソ ー ス ビ ュ ーで、 コ ロ ン の後に改行な し の ス ペー ス を 挿入 し な
か っ た場合は、 こ こ で 〔Space〕 を押 し て挿入 し ます。
11 ス ク リ プ ト ビ ュ ーを右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから [新規
ス ク リ プ ト |サーバ| JSP | "<%= ... %>"] を選択 し ます。
ス ク リ プ ト ビ ューの最初の ド ロ ッ プダ ウ ン リ ス ト ボ ッ ク ス に、 今
度は ServerScript[1] が表示 さ れます。 ページ編集ビ ュ ーには、 2 つ
めの <%=> 記号が表示 さ れます。
こ の 2 つめの <%=> 記号がテ キ ス ト 行の末尾に表示 さ れない場合
は、 それを選択 し て行の末尾に ド ラ ッ グ し ま す。 こ の と き 、 コ ロ
ン と <%=> 記号が スペース 1 文字で区切 ら れてい る こ と を確認 し
ます。
PowerBuilder 入門
315
簡単な JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
12 シ ス テム ツ リ ーの [コ ンポーネ ン ト ] タ ブ で、
CurrencyExchangeService.tld の下にある getRate ク ラ スを 展開し ま す。
13 CurrencyExchangeService_getRate_returnValue 変数を、 ス ク リ プ ト
ビ ュ ーの ServerScript[1] に ド ラ ッ グ し ます。
14 HTML エデ ィ タ ツールバーの [保存] ボ タ ン を ク リ ッ ク し ます。
(オプ シ ョ ン) simple.jsp ページ と HTML エデ ィ タ を閉 じ ます。
316
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
ア プ リ ケーシ ョ ンの構築、 配布、 実行
こ の ス テ ッ プでは、 JSP アプ リ ケーシ ョ ン を配布お よ び実行 し ます。
1
タ ーゲ ッ ト プ ロ フ ァ イルで選択 し た EAServer が起動 さ れている こ と を
確認 し て く だ さ い。
2
シ ス テム ツ リ ーの [ワー ク スペース] タ ブ で、 [jspTutorial] を右ク リ ッ
ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [配布] を選択 し ます。
配布が終了す る と 、 出力ウ ィ ン ド ウ に 「終了 タ ーゲ ッ ト の配布
jspTutorial」 と 表示 さ れ ます。
3
jspTutorial タ ーゲ ッ ト の中を再度右 ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を選択 し ます。
4
タ ーゲ ッ ト プ ロパテ ィ ダ イ ア ログボ ッ ク スで [実行] タ ブ を ク リ ッ ク し
ます。
[ス タ ー ト ページ] テキス ト ボ ッ ク スの横にある参照ボ タ ン を ク リ ッ ク し
ます。
URL の選択 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
5
jspTutorial タ ーゲ ッ ト の中身を示す リ ス ト ボ ッ ク スで 「simplestart.jsp」
を選択 し 、 [OK] を ク リ ッ ク し ます。
タ ーゲ ッ ト プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス に、 タ ーゲ ッ ト の ス
タ ー ト ページ と し て /simplestart.jsp が表示 さ れ ます。
6
[実行用の配布構成] ド ロ ッ プダウン リ ス ト で
「jspTutorialDeployConfiguration1」を選択 し 、[OK]を ク リ ッ ク し ます。
7
メ ニ ュ ー バーから [実行|選択 し て実行] を選択 し ます。
タ ーゲ ッ ト の選択 ダ イ ア ログボ ッ ク スで 「jspTutorial」 を選択 し ます。
[OK] を ク リ ッ ク し ます。
デフ ォ ル ト のブ ラ ウ ザに、 simplestart.jsp Web ページが表示 さ れ ま
す。
8
ド ロ ッ プダウン リ ス ト で国を選択 し て [ク エ リ 送信] を ク リ ッ ク し ます。
選択 し た国の通貨の為替レー ト が計算 さ れ、 結果が simple.jsp ペー
ジに表示 さ れます。
PowerBuilder 入門
317
4GL JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
4GL JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
現在の学習個所
JSP タ ーゲッ ト の作成
簡単な JSP ア プ リ ケーシ ョ ン で の Web サービ ス の利用
> 4GL JSP アプ リ ケーシ ョ ン での Web サービ スの利用
こ の レ ッ ス ン では、 4GL JSP を作成 し 、 それに Web サービ ス を追加 し
ま す。 simple.jsp ページで使用 し たの と 同 じ Web サービ ス を利用 し ま
す。
•
4GL JSP ページ の作成
•
4GL ページ への Web サービ ス と ページ 変数の追加
•
4GL JSP ページ へのテ ーブルの追加
•
Web サービ ス への呼び出し の完了
•
4GL JSP ページ の構築、 配布、 実行
4GL JSP ページの作成
1
メ ニ ュ ー バーか ら [ フ ァ イ ル|新規作成] を 選択 し 、 [Web] タ ブ を ク
リ ッ ク し ます。
2
[ タ ーゲ ッ ト ] ド ロ ッ プダウン リ ス ト で 「jspTutorial」 が選択 さ れている
こ と を確認 し ます。
[4GL Web/JSP ページ] ア イ コ ン を選択 し て、 [OK] を ク リ ッ ク し 、 さ
ら に [次へ] を ク リ ッ ク し ます。
4GL Web Page ウ ィ ザー ド が開 き 、 [新規 HTML フ ァ イ ルの指定]
ページが表示 さ れます。
3
[ タ イ ト ル] テキス ト ボ ッ ク スに 「fourgl」 と 入力 し 、 [次へ] を何度か
ク リ ッ ク し て [EAServer プ ロ フ ァ イルの選択] ページ を表示 し ます。
最初に [次へ] を ク リ ッ ク し た と き に [フ ァ イ ル名] フ ィ ール ド
のフ ァ イ ル名が、 fourgl.jsp に変わ り ます。 以降、 [次へ] を ク リ ッ
ク し て表示 さ れ る各ページでは、 デフ ォ ル ト 値を受け入れます。
318
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
4
ウ ィ ザー ド の [EAServer プ ロ フ ァ イルの選択] ページにある [EAServer
コ ンポーネ ン ト のスキ ッ プ] チ ェ ッ ク ボ ッ ク ス を オ ン に し て、 [次へ] を
ク リ ッ ク し ます。
5
[完了] ボ タ ン を ク リ ッ ク し ます。
jspTutorial タ ーゲ ッ ト 内に fourgl.jsp ページが作成 さ れ ま す。 作成
さ れたページが HTML エデ ィ タ 内に開 き ます。 ま た、 タ ーゲ ッ ト
用に作成 し たほかのページ と 一緒にシ ス テ ム ツ リ ーに も リ ス ト 表
示 さ れます。
6
fourgl.jsp ページのデ フ ォル ト のテキス ト の 「こ こ にデー タ を置き ます」
をハイ ラ イ ト 表示 し ます。
新 し いテキス ト と し て 「通貨変換」 と 入力 し ます。
7
入力し たテキスト 内にカ ーソ ルを 置いて、メ ニュ ー バーから[ 書式|段落]
を選択 し ます。
段落 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
8
[段落ス タ イル] ド ロ ッ プ ダウン リ ス ト か ら 「見出 し 1」 を選択 し 、 [テキ
ス ト 配置] フ ィ ール ド から 「中央」 を選択 し て、 [OK] を ク リ ッ ク し ます。
入力 し た テ キ ス ト が、見出 し 1 フ ォ ン ト ス タ イ ルで表示 さ れ ます。
9
テキス ト の末尾に カ ー ソルを置き、 〔Enter〕 を押 し ます。
「(4GL Version)」 と 入力 し て 〔Enter〕 を押 し ます。
10 HTML エデ ィ タ ツールバーの [保存] ボ タ ン を ク リ ッ ク し ます。
4GL ページへの Web サービ ス と ページ変数の追加
1
プ ロパテ ィ ツ リ ーの [ コ ンポーネン ト ] タ ブ を ク リ ッ ク し ます。
2
カ ス タ ム タ グ ラ イ ブ ラ リ の リ ス ト を展開 し て、
CurrencyExchangeService.tld フ ァ イルを表示 し ます。
JSP Web サービ ス プ ロ キ シ ウ ィ ザー ド に よ っ て、 Currency
Exchange Service ラ イ ブ ラ リ がカ ス タ ム タ グ ラ イ ブ ラ リ の リ ス ト
に追加 さ れます。 こ の ラ イ ブ ラ リ は、 simple.jsp ページの taglib
デ ィ レ ク テ ィ ブで追加 し た ラ イ ブ ラ リ と 同 じ も のです。
PowerBuilder 入門
319
4GL JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
3
CurrencyExchangeService.tld フ ァ イルを、 HTML エデ ィ タ 内の
fourgl.jsp ページに ド ラ ッ グ し ます。
TLD フ ァ イ ルの省略名 と し て使用す る 接頭辞を入力す る よ う に求
め る ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
4
接頭辞 と し て 「cur」 と 入力 し 、 [OK] を ク リ ッ ク し ます。
ページに taglib デ ィ レ ク テ ィ ブが追加 さ れます。
5
ページ編集ビ ュ ーで fourgl.jsp ページ を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [ページ プ ロパテ ィ ] を選択 し 、 [変数] タ ブ を
ク リ ッ ク し ます。
6
変数に以下のプ ロパテ ィ を追加 し て、 [OK] を ク リ ッ ク し ます。
カ ラム
7
変数名
Data Type
入力または選択する値
v_units
double
イ ニシ ャ ル値
ラ イフタ イム
100.
page
ク ラ イアン ト ア ク セス
NONE
HTML エデ ィ タ ツールバーの [保存] ボ タ ン を ク リ ッ ク し ます。
4GL JSP ページへのテーブルの追加
1
ページ編集ビ ュ ーの fourgl.jsp ページ で、入力 し た テキス ト を含む行の下
に カ ー ソ ルを置き ます。
2
メ ニ ュ ー バーか ら [テーブル|テーブル ウ ィ ザー ド ] を選択 し ます。
3
テーブル内の行数に 「2」 と 入力 し て、 [次へ] を ク リ ッ ク し ます。
テーブル内の行数に 「3」 と 入力 し て、 [完了]、 [OK] を ク リ ッ ク し ます。
fourgl.jsp ページにテーブルが追加 さ れ ま す。 テーブル内の各セル
には、 「Cell」 と い う 単語がデフ ォ ル ト で設定 さ れます。
4
320
テーブルの左上隅のセルでデ フ ォ ル ト のテキス ト をハ イ ラ イ ト 表示 し ま
す。
セル内に、 「通貨 From:」 と 入力 し ます。
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
5
テー ブルの左下隅のセルでデ フ ォ ル ト のテキス ト をハ イ ラ イ ト 表示 し ま
す。
セル内に、 「通貨 To: 」 と 入力 し ます。
6
テー ブルの上中央のセルでデ フ ォ ル ト のテキス ト をハ イ ラ イ ト 表示 し ま
す。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | リ ス ト ボ ッ ク ス] を選
択 し ます。
リ ス ト ボ ッ ク ス プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。
7
[サーバに送る名前] テキス ト ボ ッ ク スに 「country_from」 と 入力 し ま
す。
リ ス ト ボ ッ ク ス プ ロパテ ィ ダ イ ア ロ グボ ッ ク ス で [オ プ シ ョ ン] タ ブ を
ク リ ッ ク し ます。
[オプ シ ョ ン] リ ス ト に以下の表示テキス ト と 値を入力 し ます。
テキス ト
8
中国
フランス
値
china
euro
イギ リ ス
シ ン ガポール
united kingdom
singapore
アメ リカ
usa
ア メ リ カのエ ン ト リ の横にある [選択済み] カ ラ ムのチ ェ ッ ク ボ ッ ク ス を
オンに し て、 [OK] を ク リ ッ ク し ます。
テーブルの上中央のセルに リ ス ト ボ ッ ク ス が表示 さ れ ま す。 ペー
ジ編集ビ ュ ーには、ア メ リ カの値だけが表示 さ れ ます。プ レ ビ ュ ー
ビ ュ ーでは、 ド ロ ッ プダ ウ ン リ ス ト で入力 し たすべての国が表示
さ れ ます。 ただ し 、 プ レ ビ ュ ー ビ ュ ーで編集はで き ません。 編集
を続け る には、 ページ編集ビ ュ ーに戻 る必要があ り ます。
9
テー ブルの下中央のセルでデ フ ォ ル ト のテキス ト をハ イ ラ イ ト 表示 し ま
す。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド | リ ス ト ボ ッ ク ス] を選
択 し ます。
10 [サーバに送る名前] テキス ト ボ ッ ク スに 「country_to」 と 入力 し ます。
リ ス ト ボ ッ ク ス プ ロパテ ィ ダ イ ア ロ グボ ッ ク ス で [オ プ シ ョ ン] タ ブ を
ク リ ッ ク し ます。
手順 7 で入力 し たの と 同 じ 表示テキス ト と 値を入力 し ます。
PowerBuilder 入門
321
4GL JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
11
フ ラ ン スのエ ン ト リ の横の [選択済み] カ ラムのチ ェ ッ ク ボ ッ ク ス を オ ン
に し て、 [OK] を ク リ ッ ク し ます。
テーブルの下中央のセルに リ ス ト ボ ッ ク ス が表示 さ れ ま す。 ペー
ジ編集ビ ューには、 フ ラ ン ス の値だけが表示 さ れます。
12 テーブルの右上隅のセルでデ フ ォ ル ト のテキス ト をハ イ ラ イ ト 表示 し ま
す。
メ ニ ュ ー バーから [挿入|フ ォ ーム フ ィ ール ド |シ ングル ラ イ ン テキス
ト ] を選択 し ます。
13 テキス ト コ ン ト ロール プ ロパテ ィ ダ イ ア ログボ ッ ク スの [名前] テキス
ト ボ ッ ク スに 「units」 と 入力 し ます。
14 テキス ト コ ン ト ロール プ ロパテ ィ ダ イ ア ログボ ッ ク スの [バイ ン ド ] タ
ブ を ク リ ッ ク し ます。
コ ンポーネ ン ト 名に 「<Page Variable>」、 プ ロパテ ィ 名に 「v_units」 を
選択 し て、 [OK] を ク リ ッ ク し ます。
fourgl.jsp ページが次の よ う に表示 さ れ る はずです。
15 テ ー ブルの右下のセルで デ フ ォ ル ト のテ キ ス ト を ハ イ ラ イ ト 表示 し て、
〔Delete〕 を押 し ます。
デフ ォ ル ト のテ キ ス ト が削除 さ れ ま す。 こ の後の手順で、 こ のセ
ルに getRate Web サービ スへの呼び出 し を入力 し 、返 さ れた計算結
果を こ のセルに設定 し ます。
322
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
Web サービ スへの呼び出 し の完了
1
シ ス テム ツ リ ーの [コ ンポーネン ト ] タ ブ で、
CurrencyExchangeService.tld フ ァ イルを展開 し ます。
getRate ク ラ ス を、 fourgl.jsp ページのテーブルの右下のセルに ド ラ ッ グ
し ます。
cur:getRate プ ロ パテ ィ ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
2
リ ス ト さ れた各属性の値カ ラ ムに以下の値を入力 し て、 [OK] を ク リ ッ ク
し ます。
属性名
country1
値
<%= country_from.value %>
country2
<%= country_to.value %>
ページ編集ビ ュ ーのテーブルの右下のセルに、 カ ス タ ム の JSP ア
ク シ ョ ン が追加 さ れた こ と を 示す <ctl:/> 記号が表示 さ れ ま す。
ソ ース ビ ュ ーには、 最後のセル内の コ ー ド が次の よ う に表示 さ れ
ます。
<cur:getRate country1="<%= country_from.value %>"
country2="<%= country_to.value %>" />
3
ス ク リ プ ト ビ ュ ーの内部を右ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから
[新規ス ク リ プ ト |サーバ| JSP | "<%= ... %>"] を選択 し ます。
ス ク リ プ ト ビ ュ ーの最初の ド ロ ッ プ ダ ウ ン リ ス ト ボ ッ ク ス に、
ServerScript[0] が表示 さ れ ます。
4
[ コ ン ポーネ ン ト ] タ ブ で、 CurrencyExchangeService.tld の下の
getRate ク ラ ス を展開 し ます。
CurrencyExchangeService_getRate_returnValue 変数 を、 ス ク リ プ ト
ビ ュ ーの ServerScript[0] に ド ラ ッ グ し ます。
ス ク リ プ ト ビ ューに、
“CurrencyExchangeService_getRate_returnValue” と い う テ キ ス ト が
表示 さ れます。
5
PowerBuilder 入門
ス ク リ プ ト ビ ュ ーに ド ラ ッ グ し たテキス ト の直後に 「.floatValue()*
v_units」 と 入力 し ます。
323
4GL JSP ア プ リ ケーシ ョ ン での Web サービ スの利用
サーバ ス ク リ プ ト は、ド ッ ト 表記を使用 し て floatValue メ ソ ッ ド を
呼び出 し 、 戻 り 値を キ ャ ス ト し てか ら 、 それに v_units ページ変数
の値を掛け て最終結果を得 ま す。 ス ク リ プ ト 全体は次の よ う にな
り ます。
CurrencyExchangeService_getRate_returnValue.floatVa
lue()* v_units
6
サーバ ス ク リ プ ト 記号 “<%=>” が、 テーブル右下のセル内の “<ctl:/>”
記号の後ろ に表示 さ れている こ と を確認 し ます。
ページ編集ビ ュ ーで、 サーバ ス ク リ プ ト 記号 <%=> を移動 し たい
場所に ド ラ ッ グ ア ン ド ド ロ ッ プ し ま す。 こ の記号は、 ページ編集
ビ ューの <ctl:/> 記号に よ っ て表 さ れ る カ ス タ ム タ グ ラ イ ブ ラ リ
への呼び出 し の後に置 く 必要があ り ます。
7
テーブルの右に カ ー ソ ルを置き、 〔Enter〕 を押 し ます。
新 し い行に カ ー ソ ルを置いた状態で、 [挿入|フ ォ ーム フ ィ ール ド | コ マ
ン ド ボ タ ン] を選択 し ます。
Button プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
8
[ラ ベル] テキ ス ト ボ ッ ク ス に 「変換 レ ー ト の取得」 と 入力 し て、 [OK]
を ク リ ッ ク し ます。
9
(オプ シ ョ ン) ソ ース ビ ュ ーの [Submit] ボ タ ンの コ ー ド の後、閉 じ Body
タ グの前に、 次のテキス ト を入力 し ます。
<HR id="HR1">
<P> 通貨変換 Web サービ ス :
<A
href="http://www.xmethods.net">www.xmethods.net</A>
</P>
<P>wsdl: <A id="WSDLURL" href=
"http://www.xmethods.net/sd/2001/CurrencyExchangeSe
rvice.wsdl">
http://www.xmethods.net/sd/2001/CurrencyExchangeSer
vice.wsdl</A>
</P>
Web サービ ス を利用す る にあ た っ て、 Web サービ ス の所有者を明
示 し てお き ます。
10 fourgl.jsp ページに対する変更を保存 し ます。
324
PowerBuilder
レ ッ ス ン 14
JSP Web サービ ス ア プ リ ケーシ ョ ンの作成
4GL JSP ページの構築、 配布、 実行
こ の ス テ ッ プでは、 JSP アプ リ ケーシ ョ ン を配布お よ び実行 し ます。
1
EAServer が起動 さ れている こ と を確認 し ます。
2
シ ス テム ツ リ ーの [ワー ク スペース] タ ブ で、 jspTutorial タ ーゲ ッ ト を
右 ク リ ッ ク し て、 ポ ッ プ ア ッ プ メ ニ ュ ーから [配布] を選択 し ます。
配布が終了す る と 、 出力ウ ィ ン ド ウ に 「終了 タ ーゲ ッ ト の配布
jspTutorial」 と 表示 さ れ ます。
3
jspTutorial タ ーゲ ッ ト を再度右 ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [プ ロパテ ィ ] を選択 し ます。
4
タ ーゲ ッ ト プ ロパテ ィ ダ イ ア ログボ ッ ク スで [実行] タ ブ を ク リ ッ ク し
ます。
[ス タ ー ト ページ] テキス ト ボ ッ ク スの横にある参照ボ タ ン を ク リ ッ ク し
ます。
URL の選択 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
5
jspTutorial タ ーゲ ッ ト の中身を示す リ ス ト ボ ッ ク スで 「fourgl.jsp」 を選
択 し 、 [OK] を ク リ ッ ク し ます。
タ ーゲ ッ ト プ ロ パテ ィ ダ イ ア ロ グ ボ ッ ク ス に、 タ ーゲ ッ ト の ス
タ ー ト ページ と し て /fourgl.jsp が表示 さ れます。
6
シ ス テム ツ リ ーで jspTutorial タ ーゲ ッ ト を右ク リ ッ ク し ます。
ポ ッ プ ア ッ プ メ ニ ュ ーで [実行] を選択 し ます。
デフ ォ ル ト のブ ラ ウ ザが開 き ます。 URL ア ド レ ス ボ ッ ク ス には、
作成 し た fourgl.jsp Web ページの フ ァ イ ル パ ス が入っ てい ます。選
択 し た以下のデフ ォ ル ト 値で変換 レー ト が計算 さ れ、 表示 さ れ ま
す。
7
PowerBuilder 入門
パラ メ ー タ または変数
country1
デ フ ォル ト 値
United States
country2
France
v_units
100
ブ ラ ウザで、 [通貨 From] または [通貨 To] ド ロ ッ プダウン リ ス ト で別
の国を選択 し ます。
[Get Conversion Result] ボ タ ン を ク リ ッ ク し ます。
325
次のス テ ッ プについて
fourgl.jsp Web ページのテーブルの右下セルに新 し い計算結果が表
示 さ れます。
8
fourgl.jsp Web ページのテーブルの右上セルに別の単位を入力 し て、 [変
更レー ト の取得] ボ タ ン を ク リ ッ ク し ます。
入力 し た単位を使っ て計算が実行 さ れます。
次のス テ ッ プについて
お疲れ さ ま で し た。 こ れでチ ュ ー ト リ アルの第 4 部が終了 し ま し た。
PowerBuilder での JSP タ ーゲ ッ ト と JSP Web サービ ス の基本的な使い
方が理解で き た こ と と 思い ます。
さ ら に練習を積むために、 こ のチ ュ ー ト リ アルで説明 し た JSP アプ リ
ケーシ ョ ン を Tomcat サーバや、 別の JSP 1.2 互換のサーバに配布 し て
く だ さ い。 ま た、 ユーザ定義のデー タ 型を使用 し た別の Web サービ ス
を利用 し て く だ さ い。 ユーザ定義のデー タ 型については、 『Web タ ー
ゲ ッ ト と JSP タ ーゲ ッ ト での作業』 マニ ュ アルの 「JSP タ ーゲ ッ ト 」 の
章を参照 し て く だ さ い。
こ のマニ ュ アルの冒頭の 「本書について」 に、 PowerBuilder の各マニ ュ
アルについての説明が記載 さ れてい ます。
PowerBuilder の コ ー ド 例 (Web タ ーゲ ッ ト のサン プルを含む) につい
ては、 Windows の ス タ ー ト メ ニ ュ ーで [プ ロ グ ラ ム| Sybase |
PowerBuilder 9.0 | PB 9 コ ー ド サン プル] を選択 し て参照 し て く だ さ
い。
326
PowerBuilder
索引
C
I
CHOOSE CASE 文 220
Clicked イ ベン ト
CommandButton コ ン ト ロ ール 116, 118
メ ニ ュ ー項目 156
Close イ ベン ト 、 アプ リ ケーシ ョ ン オブジ ェ ク ト
119
COMMIT 文 137
Constructor イ ベン ト 、 ユーザ オブジ ェ ク ト 105
InsertRow 関数
D
DBError イ ベン ト 133, 136
DBParm パ ラ メ ー タ 110
DeleteRow 関数 137
137
J
JSP Web サービ ス
ウ ィ ザー ド 312
カ ス タ ム タ グ ラ イ ブ ラ リ の呼び出 し 314, 323
JSP タ ーゲ ッ ト ウ ィ ザー ド 304, 307, 318
M
MDI アプ リ ケーシ ョ ン
21, 23
O
E
EAS Demo DB デー タ ベース
接続 91
セ ッ ト ア ッ プ 27
EAServer 275
Open イ ベン ト
シー ト ウ ィ ン ド ウ 139
フ レーム ウ ィ ン ド ウ 87
P
G
GetActiveSheet 関数
H
HALT 文
118
PowerBuilder 入門
156
Parent (PowerScript 代名詞) 111
PBL (PowerBuilder Library (PBL) を参照)
Pcode (疑似 コ ー ド ) 234
PowerBuilder Library (PBL) 19
PowerDynamo Web サ イ ト 247
PowerScript 4
PowerTips 9
Profile String 関数 106
327
索引
Q
W
Quick Select
ソ ー ト 条件 164
使い方 163
Web タ ーゲ ッ ト
JSP 303
PowerDynamo 245
概要 6
Web デー タ ウ ィ ン ド ウ 287
Web デー タ ウ ィ ン ド ウ コ ン テナ 277
Web ページ
概要 245
グ ラ フ ィ ッ ク 254
デー タ ウ ィ ン ド ウ の使用 279
配布 292
Web ページの作成 245
WHERE 句 172
R
Retrieve 関数
概要 136
引数の指定 140
ROLLBACK 文 137
RowFocusChanged イ ベン ト
138
S
SELECT 文 171
Select ペ イ ン タ
概要 170
タ ブ領域 171
SetFocus 関数 136, 137
SetRowFocusIndicator 関数 136
SetTransObject 関数 139
SQL Select デー タ ソ ース 169
SQLCA (SQL 通信領域) 104, 139
SQL 構文、 Select ペ イ ン タ 171
SQL 文
COMMIT 137
ROLLBACK 137
SELECT 171
SQL ペ イ ン タ 169
ア
ア イ コ ン、 アプ リ ケーシ ョ ン 40
アプ リ ケーシ ョ ン
MDI 21, 23
イ ン タ ーネ ッ ト 5
構築 233
実行 46, 275
定義 12
デバ ッ グ 199
分散 5
アプ リ ケーシ ョ ン オブジ ェ ク ト
Open イ ベン ト 52
ア イ コ ン 40, 43
定義 12
ア ンパサ ン ド 、 メ ニ ュ ー項目のア ク セ ラ レー タ
キー 145
T
this (PowerScript 代名詞) 139
To-Do リ ス ト 101
TRY-CATCH 文 220, 223
U
Update 関数
328
137
イ
イ ベン ト
Clicked 114, 156
Close 119
Constructor 105
DBError 133
LoseFocus 223
RowFocusChanged
138
PowerBuilder
索引
概要 4
Constructor 223
追加 220
メ ニ ュ ー ス ク リ プ ト か ら の発生
構造体
156
ウ
ウ ィ ザー ド
4GL 262
JSP Web サービ ス 312
JSP Web ページ 307
JSP タ ーゲ ッ ト 304
Web ページ 251, 279
接続オブジ ェ ク ト 101
デー タ ウ ィ ン ド ウ 162
テーブル 320
プ ロ ジ ェ ク ト 235
ウィンドウ
応答 66
概要 13
コ マ ン ド ボ タ ン コ ン ト ロール 78
コ ン ト ロ ールの削除 72
作成 66
ス ク リ プ ト を開 く 86
ス タ テ ィ ッ ク テ キ ス ト コ ン ト ロ ール 74
先祖 123
タ ブ順序 80
デー タ ウ ィ ン ド ウ コ ン ト ロール 126
ピ ク チ ャ コ ン ト ロ ール 72
プ レ ビ ュ ー 83
保存 66
ウ ィ ン ド ウ ペ イ ン タ 、 コ ン ト ロールの削除 72
PowerBuilder 入門
カ
拡張属性 100, 181
関数
DeleteRow 137
GetActiveSheet 156
InsertRow 137
ProfileString 106
Reset 137
Retrieve 136
SetFocus 136, 137
SetRowFocusIndicator
SetTransObject 139
Update 137
オブジ ェ ク ト レベル
概要 4
グ ロ ーバル 17
追加 220
136
17
ク
ク エ リ 17
ク ラ ス ユーザ オブジ ェ ク ト 19
グ ラ フ ィ ッ ク 254
ク リ ップ ウ ィ ンド ウ 7
グ ロ ーバル
関数 17
構造体 18
変数 107
グ ロ ーバル変数の宣言 107
ケ
オ
オー ト ス ク リ プ ト
設定のシ ョ ー ト カ ッ ト
使い方 116, 135
オブジ ェ ク ト 指向 5
オブジ ェ ク ト レベル
関数 17
18
115
継承
ウ ィ ン ド ウ 123
オブジ ェ ク ト 指向プ ロ グ ラ ミ ン グ
メ ニ ュ ー 149
ユーザ オブジ ェ ク ト 126
検索、 デー タ ベース のデー タ 290
検索引数
5
329
索引
WHERE 句
作成 171
検証 266
172
ス
コ
構造体 18
コメント
ウ ィ ン ド ウ 68
ス ク リ プ ト ビ ュ ー 88
デー タ ウ ィ ン ド ウ 166, 177
メ ニ ュ ー 150
コ ン テ キ ス ト ヘルプ、 追加 82
コ ン ト ロ ール
コ マ ン ド ボ タ ン 78
削除 72
ス タ テ ィ ッ ク テ キ ス ト 74
ピ ク チ ャ 72
複製 74
プ ロ パテ ィ の指定 74, 77, 79
コ ン ト ロ ールの削除 72
サ
サ イ ズ、 メ イ ン ウ ィ ン ド ウ
43
シ
シー ト ウ ィ ン ド ウ、 メ ニ ュ ー 150
システム ツ リ ー 7
実行フ ァ イ ル
アプ リ ケーシ ョ ン ア イ コ ン 40, 43
オブジ ェ ク ト の再生成 237
マシ ン コ ー ド の生成 234
出力ウ ィ ン ド ウ 7
初期化フ ァ イ ル
odbc.ini 92
pb.ini 96
pbtutor.ini 106
330
垂直ス ク ロ ールバー 130
スク リプト
エ ラ ー ウ ィ ン ド ウ 90
オー ト ス ク リ プ ト の設定シ ョ ー ト カ ッ ト
オー ト ス ク リ プ ト の使い方 116, 135
概要 4
コ ンパ イ ル 90
先祖ス ク リ プ ト の表示 132
ユーザ イ ベン ト 134
ス ク リ プ ト ビ ュー
エ ラ ー ウ ィ ン ド ウ 90
形式を指定 し て貼 り 付け コ マ ン ド 114
コ メ ン ト の使用 88
説明 82
プ ロ ト タ イ プ領域 136
ス ク ロ ールバー、 垂直 130
ス タ イ ルバー 9
115
セ
接続サービ ス マネージ ャ
先祖
ウ ィ ン ド ウ 123
ス ク リ プ ト 132
101
タ
タ ーゲ ッ ト 6
代名詞、 PowerScript
this 139
親 111, 112
タ ブ順序 80
タ ブ ラ 提示様式 163
チ
チ ュ ー ト リ アル
初期化フ ァ イ ル 106
セ ッ ト ア ッ プ 27
フ ァ イ ル 27
PowerBuilder
索引
チ ュ ー ト リ アルのセ ッ ト ア ッ プ
27
ツ
ツールバー
実行時のアプ リ ケーシ ョ ン
テ キ ス ト の表示 61
154
テ
提示様式
タ ブ ラ 163
デー タ ウ ィ ン ド ウ オブジ ェ ク ト 163, 169
フ リ ーフ ォーム 169
デー タ ウ ィ ン ド ウ オブジ ェ ク ト
Quick Select でのカ ラ ムの選択 163
WHERE 句 172
概要 14, 161
拡張 178
カ ラ ムの再配置 178
カ ラ ムの整列 180
検索引数 171
作成 163, 169
提示様式 163, 169
デー タ ウ ィ ン ド ウ コ ン ト ロールへのア タ ッ チ
184, 187, 193
デー タ ソ ース 163, 169
表示順序 163
保存 166, 176
デー タ ウ ィ ン ド ウ オブジ ェ ク ト でのカ ラ ムの整
列 180
デー タ ウ ィ ン ド ウ オブジ ェ ク ト のカ ラ ム
再配置 178
整列 180
デー タ ウ ィ ン ド ウ オブジ ェ ク ト のサマ リ 区域
162
デー タ ウ ィ ン ド ウ オブジ ェ ク ト の詳細区域 162
デー タ ウ ィ ン ド ウ オブジ ェ ク ト の フ ッ タ区域
162
デー タ ウ ィ ン ド ウ オブジ ェ ク ト のヘ ッ ダ区域
162, 164
デー タ ウ ィ ン ド ウ コ ン ト ロール 126
PowerBuilder 入門
デー タ ウ ィ ン ド ウ デー タ式 140
デー タ ウ ィ ン ド ウ ペ イ ン タ
WHERE 句 172
区域 162
検索引数 171
デー タ ソ ース
Quick Select 163
SQL Select 169
デー タ ベース
拡張属性 100
更新 294, 295
実行時のデー タ ベースへの接続 104
接続 6
デー タ の検索、 表示お よ び操作 14
表定義 96
デー タ ベース接続
概要 6, 92
ト ラ ンザ ク シ ョ ン オブジ ェ ク ト 104
デー タ ベース プ ロ フ ァ イ ル 92
デー タ ベース ペ イ ン タ、 使い方 96
テーブル ウ ィ ザー ド 320
デバ ッ グ
ウ ォ ッ チの設定 209
概要 199
コ ー ド の ス テ ッ プ実行 204
デバ ッ グ モー ド での実行 204
ブ レー ク ポ イ ン ト の追加 200
ト
ト ラ ンザ ク シ ョ ン オブジ ェ ク ト 104, 139
ド ロ ッ プダ ウ ン デー タ ウ ィ ン ド ウ編集様式
ド ロ ッ プダ ウ ン メ ニ ュ ー
項目の追加 144
説明 17
181
ハ
背景色、 3D がデフ ォ ル ト オプシ ョ ン
背景色、 ウ ィ ン ド ウ 67
パ ワ ーバー 8
71
331
索引
ヒ
ヘ
ビ ジ ュ アル ユーザ オブジ ェ ク ト 18
ビ ュー
ス タ ッ ク 57
操作 54
タ イ ト ルバーの固定 56
ド ッ キ ン グ 56
浮動 56
レ イ ア ウ ト ス キーマの保存 58
ビ ュ ー、 タ イ プ
HTML プ レ ビ ュ ー (デー タ ウ ィ ン ド ウ ペ イ ン タ )
165
Syntax (Select ペ イ ン タ ) 171
オブジ ェ ク ト (デー タ ベース ペ イ ン タ ) 97
オブジ ェ ク ト の詳細 (デー タ ベース ペ イ ン タ )
99
オブジ ェ ク ト レ イ ア ウ ト (デー タ ベース ペ イ ン
タ ) 98
ス ク リ プ ト 82
テーブル レ イ ア ウ ト (Select ペ イ ン タ ) 170
デザ イ ン (デー タ ウ ィ ン ド ウ ペ イ ン タ ) 162
プ レ ビ ュ ー (デー タ ウ ィ ン ド ウ ペ イ ン タ ) 165
プ レ ビ ュ ー ( メ ニ ュ ー ペ イ ン タ ) 144
プ ロ パテ ィ 67
レ イ ア ウ ト 67
ビ ュ ーの ド ッ キ ン グ 56
ペイ ン タ 7
ペ イ ン タ バー
コ ン ト ロ ールの追加 70
使い方 9
ポ ッ プア ッ プ メ ニ ュ ー 61
ヘルプ
コ ン テ キ ス ト メ ッ セージ 82
マ イ ク ロ ヘルプ 152
編集様式、 ド ロ ッ プダ ウ ン デー タ ウ ィ ン ド ウ
181
変数
gnv_connect 107
イ ン ス タ ン ス 107
グ ロ ーバル 107
検証 266
命名規約 108
ホ
ボ タ ン、 追加 285
ポ ッ プア ッ プ メ ニ ュ ー
概要 61
ペ イ ン タ バー 61
マ
マ イ ク ロ ヘルプ 152
マ ウ ス の右ボ タ ン、 ポ ッ プア ッ プ メ ニ ュ ー
マシ ン コ ー ド 234
マネージ ャ 、 接続サービ ス 101
フ
浮動
ツールバー 61
ビ ュ ー 56
フ リ ーフ ォーム提示様式
カ ラ ム 178
デー タ ウ ィ ン ド ウ 定義
ブ レー ク ポ イ ン ト 200
フ レーム ウ ィ ン ド ウ 87
プ ロ ジ ェ ク ト ウ ィ ザー ド
332
169
235
61
メ
メ イ ン ウ ィ ン ド ウ、 サ イ ズ
メ ニュー
概要 16
継承 149
作成 149
ス ク リ プ ト の追加 156
ツールバー 146, 154
43
PowerBuilder
索引
保存 150
メ ニ ュ ー項目 144
メ ニ ュ ー項目
ス ク リ プ ト の追加 156
説明 16
定義 144
メ ニ ュ ー バー、 説明 16
メ ニ ュ ー ペ イ ン タ 、 使い方
144
ユ
ユーザ イ ベン ト
ス ク リ プ ト の追加 134
定義 134
メ ニ ュ ー ス ク リ プ ト か ら の発生
ユーザ オブジ ェ ク ト
概要 18
使い方 126
156
ラ
ラ イブラ リ
JSP カ ス タ ム タ グ 314
アプ リ ケーシ ョ ンの探索パス
オブジ ェ ク ト の再構築 142
概要 19
動的 234
124
レ
例外
送出 220
捕捉 223
ユーザ定義
218
ワ
ワ ー ク スペース
PowerBuilder 入門
6
333
334
PowerBuilder
Fly UP