1 - マジックソフトウェア・ジャパン株式会社

はじめに
このたびは、dbMAGIC をお買い上げいただき、まことにありがとうござ います。
dbMAGIC は、システム開発の専門的なユーザ
( システムアナリスト、システム設計者、プログラマーの方々など )
を対
象とした、データベースアプ リケーション開発のためのツールです。
この
「 dbMAGIC Ver.8.2 新機能ガイド 」
では、dbMAGICVer.7 から追加された新しい機能について説明しています。dbMAGIC
をご 使用になる時に、お手元に置いてご 活用ください。
1999 年 2 月 5 日
マジックソフトウェア・ジャパン株式会社
ご注意
(1) 本マニュアルの内容の一部または全部を、無断で転載することは固くお断りし ます。
(2) 本マニュアルの内容は、将来予告なしに変更することがあります。
(3) 本マニュアルの内容については万全を期して作成しましたが 、万一誤り、お気付きの点などがござ いました
ら、ご 連絡くださいますようお願い致します。
(4) 運用した結果の影響につきましては、(3) 項にかかわらず責任を負いかねますのでご了承ください。
Windows および WindowsNT は、米国 Microsoft Corporation の登録商標です。
Java は、米国 Sun Microsystems,Inc. の商標です。
dbMAGIC はマジックソフトウェア・ジャパン株式会社の商標です。
一般に会社名、製品名はその会社の商標または登録商標です。
Copyright 1999
ii
新機能ガ イド
dbMAGIC Ver.8.2
目次
第 1 章 はじめに
1–1
1–2
1.1
dbMAGIC Ver8.3 について
1.2
1.3
統合クライアント /サーバおよび Web 開発
オープンでスケーラブルなサーバアーキテクチャ
1.4
1.5
dbMAGIC 制御ファイルの機能拡張 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1–2
各新機能についての記述章について : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1–3
第2章
2.1
2.2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
1–2
1–2
インタフェースと用語
2–1
dbMAGIC 8 の用語
ツールバーボタン :
2–2
2–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2.3 ダ イアログを使用した作業
2.4 式におけるツールチップ :
2.5 処理コマンド の色定義 :
2.6 デフォルト色とフォント
2.7
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2–5
2–5
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2–6
2–6
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
MDI クライアント領域での背景の指定 (Ver8.3)
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2–7
第 3 章 新しいアクション、関数と機能
3–1
3.1
3.2
アプ リケーション圧縮
3–2
3–3
3.3
3.4
GUI 形式フォームエデ ィタ
ユニークソート : : : : : :
3.5
3.6
メインテーブルのカーソル動作
新しいアクション
3.7
新しい関数
GUI 形式プ リント機能
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
3–5
3–6
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
3–6
3–6
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
3–7
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 4 章 パーティショニング
4.1
MRB(MAGIC リクエストブローカ)
4.2
4.3
動作環境
4.4
関数
4–1
: 4–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
リモートコール
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
4–6
4–8
4–14
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 5 章 HTML フォームエディタ
5–1
5.1
5.2
環境
5.3
5.4
HTML フォームのフォーム特性 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–4
HTML フォームと HTML ド キュメント : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–6
5.5
5.6
ハイパーリンクの設定
5.7
HTML コントロール
5.8
コントロールの編集方法
5–2
: 5–3
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
HTML フォーム
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
dbMAGIC HTML フォームの環境設定
新機能ガ イド
dbMAGIC Ver.8.2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
5–7
5–9
5–11
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
5–13
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
iii
第 6 章 HTML フレームセット 形式フォームエディタ
6–1
6.1 フレームセットの階層構造 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 6–2
6.2 [ HTML フレームセット ]の[フォーム]特性 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 6–2
6.3
HTML フレームセットのフォーム編集
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 7 章 Java フォームエディタ
7–1
7.1
7.2
Java フォーム : : : : : : : : :
Java フォームのフォーム特性
7.3
7.4
Java コントロール : : : : : :
Java コントロールの編集方法
7–2
7–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
7–4
7–5
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 8 章 マージ出力
8.1
8.2
8–1
テンプレート
入出力特性
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
8.3 [データマージ出力]コマンド
8.4 例 : : : : : : : : : : : : : : : :
第9章
9.1
6–4
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
インターネット APG
インターネット APG の使用方法
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 10 章 インターネット リクエスタ
10.1 インストールと動作環境設定 :
10.2 リクエスタの使用方法
8–2
8–3
8–4
8–5
9–1
9–2
10–1
10–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
10–3
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 11 章 SQL
11–1
11.1 SQLWHERE 句 : : : : : : : :
11.2 片方向および双方向での動作 :
11–2
:11–4
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
11.3 照会モード 時位置付( インクリメンタルサーチ )
11–5
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
11.4 RDBMS を使用したソート処理 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–5
:
11.5 CNDRANGE 関数 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–6
11.6 INTRANS 関数 : : : : : : : : : : : :
11.7 環境設定/ ISAM トランザクション
11–6
: 11–7
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
11.8 トランザクション内でのロッキング : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :11–7
:
11.9 RDBMS 設定の方法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–8
第 12 章 キャッシュ
12.1 [テーブル特性]ダ イアログ
12.2 [タスク制御]ダ イアログ
12.3 [ DB テーブル ] : : : : :
12.4 dbMAGIC キャッシュ
第 13 章 リンクジョイン
13.1 ジョイン
12–3
12–4
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
12–4
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
13–1
13–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 14 章 デフォルト 値
14.1 デフォルト値
14–1
14–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
14.2 デフォルト値の指定
iv
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
12–1
:12–2
14–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
新機能ガ イド
dbMAGIC Ver.8.2
第 15 章 ワークグループ 開発
15–1
15.1 ワークグループ 開発オプション
15.2 MVCS メニュー : : : : : : : :
15.3 チーム開発 : : : : : : : :
15.4 バージョン管理マネージャ
15–2
15–5
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
15–6
: 15–10
:
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 16 章 ヨーロッパ通貨と西暦 2000 年問題 (Y2K) 対応)
16.1 ヨーロッパ通貨の設定
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
16–1
:16–2
16.2 関数 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :16–3
16.3 西暦 2000 年問題対応のためのデフォルト変更 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1: 6–5
新機能ガ イド
dbMAGIC Ver.8.2
v
機種別キー操作の違い
本マニュアルで使用している特殊キーの表記と実際使用しているコンピュータのキーの表記とは若干異なる場合があり
ます。下記の一覧表を参照してください。
表記
PC-9801
DOS/V
f1 – f10
F1 – F10
CAPS
Caps Lock
Shift ;
SHIFT
Shift
Ctrl ;
CTRL
Ctrl
PgUp ROOL UP
PageUp
PgDn
ROOL DOWN
PageDown
INS
Insert
DEL
Delete
BS
Back Space
TAB
Tab
; ;
F1 – F10 ;
Caps Lock ;
;
;
Ins ;
Del ;
Back Space ;
Tab ; , ;
;
Enter Alt vi
;
Enter
GRP
Alt
HOME CLR
Home
HELP
End
;
Home ;
End 新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 1 章 はじめに
1.1
1.2
1.3
1.4
統合クライアント /サーバおよび Web 開発
dbMAGIC 制御ファイルの機能拡張 :
新しく追加された機能 : : : : : : : :
1–2
1–2
: 1–2
: 1–3
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
オープンでスケーラブルなサーバアーキテクチャ
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第1章
はじめに
このたびは、dbMAGIC for the Enterprise バージョン 8( 以下、dbMAGIC バージョン 8 )をお買い上げいただ
きましてありがとうござ います。dbMAGIC バージョン 8 は、エンタープライズ全域にわたる専門性の高い
ビジネスアプ リケーション開発向けに設計されているので 、業界をリード するインターネット Web ブラウ
ザ、Web サーバ 、アプ リケーションサーバ、言語およびデータベースなどをオープンにしかも多岐にわたっ
て支援いたします。
本書では、本バージョンに記載されている新しく追加された機能について説明します。
1.1
統合クライアント/サーバおよび Web 開発
dbMAGIC の前バージョンでは、マルチプラットフォームクライアントおよびサーバアプ リケーションをす
ぐに開発しご利用いただけるよう、グラフィカルな環境を提供いたしました。dbMAGIC バージョン 8 では、
このような機能が Web にまで展開されています。本書に記載されている dbMAGIC の新しい HTML 機能と
Java 機能により、Java ベースのユーザインタフェースと HTML ベースのユーザインタフェースを実現でき
ます。
開発時には、dbMAGIC が Windows 要素に最も近い要素と置き換えることによって、Java ベースのユーザイ
ンタフェースあるいは HTML ベースのユーザインタフェースを自動的に生成します。開発者は、従来の GUI
またはテキストベースのフォームを構築した時と同じビジュアルな開発パラダ イムを使用して、Web サーバ
アプリケーションを構築できます。したがって、HTML や Java に依存しないインタフェースを実現すること
ができます。
1.2
オープンでスケーラブルなサーバアーキテクチャ
dbMAGIC バージョン 8 では、広範なコンピュータ、オペレーティングシステムおよびデータベースにわたっ
て、Web を利用したアプリケーションと従来のクライアント /サーバアプリケーションの両方に関し 、互いに
移植可能でスケーラブルなアプ リケーションを構築できます。dbMAGIC 開発環境では、全機能型トランザ
クション処理システムのスケーラビ リティと、極めて移植性の高い RAD 環境の利点とを享受いただけます。
dbMAGIC の新しいアプ リケーションパーティショニング機構 (第 4 章「パーティショニング 」の章を参照)
は、アプリケーションのビジュアルでしかも動的なパーティショニングや動的サーバスワッピングを可能に
します。開発者は、複数のクライアント間、あるいは複数のアプ リケーションサーバに分散可能な、論理ア
プ リケーションを構築できます。
1.3
dbMAGIC 制御ファイルの機能拡張
dbMAGIC バージョン 8 では、
「 dbMAGIC コントロールファイル (CTL) 」の機能が拡張されています。dbMAGIC
の以前のバージョンでは、CTL は 64K のメモリ容量に制限されていました。dbMAGIC バージョン 8 では、
現在このような制限が取り除かれているので 、下記を実現することができます。
■ 開発時のタスクツリーの深さが 25 レベルまで、実行時のタスクのネストの深さが 256 レベルまでそれ
ぞれ拡張されています。
■ dbMAGIC アクション数が 500 まで登録できます。
■ [タイプ ]、
[テーブル]、
[権利]および[ メニュー]の各リポジトリには、5000 件まで登録できます。
■ [ヘルプ ]リポジトリには、20000 件まで登録できます。
■ [プログラム]リポジトリには、20000 件までプログラムを登録できます。
1–2 はじめに
新機能ガ イド
dbMAGIC Ver.8.2
■ イベント数が 1000 件まで登録できます。
1
■ [ 設定]メニューの各テーブルは、登録数に制限がありません。
■ 1 つのフォームにつき 1000 個までコントロールを登録できます。
■ 1 つのブレ イクレベルにつき 9999 個までのコマンド を登録できます。
1.4
新しく追加された機能
SQL に関する章に、多数の新しい SQL 機能と変更された SQL の機能が記載されています( 第 11 章「 SQL 」
)
。
dbMAGIC キャッシュの使用法の変更や、dbMAGIC キャッシュに関連するユーザインタフェースの変更につ
いては、第 12 章「キャッシュ」を参照してください。
主としてデフォルト値を定義するための新しい機能については 、第 14 章「デフォルト値」を参照してくだ
さい。
新しい結合リンクコマンド については、第 13 章「 リンクジョイン 」を参照してください。
新しいアプ リケーションを「圧縮」するための機能については、第 3 章「新しいアクション 、関数と機能」
新しいアクション 、関数と機能を参照してください。
「ワークグループ開発」機能は、複数の開発者が同じアプリケーションで同時に作業を行えるようにします。
詳細については、
「ワークグループ 開発」機能の説明を参照してください。
アプ リケーションの変更に関する記録を保持するためのバージョン管理機能については、第 15 章「ワーク
グループ 開発」を参照してください。
新機能ガ イド
dbMAGIC Ver.8.2
1.4 新しく追加された機能 1–3
1–4 はじめに
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第2章
インタフェースと用語
2.1 dbMAGIC 8 の用語 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2.2 ツールバーボタン : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2.3 ダイアログを使用した作業 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2.4 式におけるツールチップ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2.5 処理コマンド の色定義 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2.6 デフォルト 色とフォント : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2.7 MDI クライアント 領域での背景の指定 (Ver8.3) : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
2–2
2–2
2–5
2–5
2–6
2–6
2–7
第2章
インタフェースと用語
dbMAGIC バージョン 8 には、魅力的な新しいインタフェースが備わっています。頻繁に使用するコマンド
が 、3 次元ツールアイコンとして表現されています。さらに効率的にしかも簡単に利用できるよう、多くの
アイコンがツールバーに追加されています。
dbMAGIC バージョン 8 にはタブ 付きページ構成が使用されており、特性およびタスクオプションダ イアロ
グの構成が改善されています。
dbMAGIC の用語が 、標準の SQL 用語に一致するよう改訂されています。
2.1
dbMAGIC 8 の用語
用語の改訂により、SQL と dbMAGIC との間における定義の完全性が保証されるようになりました。以下の
表に、改訂された用語のすべてを列挙します。
2.2
dbMAGIC バージョン 8
以前の dbMAGIC バージョン
リポジトリ
辞書
テーブル
ファイル
行
レコード
カラム
テーブル内のフィールド
インデックス
キー
Java/テキストフォーム
[タスク]メニュー
入出力フォーム
[オブジェクト ]メニュー
[ リポジトリ]メニュー
[開発]メニュー
ツールバーボタン
起動モード
「起動モード 」には、22 個のアイコンがあります。サービ ス、ビジュアル接続および HTML スタイルは新
しいコマンド アイコンで、
[ 設定]プルダウン メニューからもアクセスできます。
図 2.1: dbMAGIC 8 の起動ツールバー
以下の表で、dbMAGIC 8 の起動アイコンと dbMAGIC 7 の起動アイコンとを比較します。
dbMAGIC バージョン 8
dbMAGIC バージョン 7
アプリケーションオープン
アプリケーション
動作環境
基本色
フォント
キーボード 割付
サーバ
2–2
インタフェースと用語
新機能ガ イド
dbMAGIC Ver.8.2
dbMAGIC バージョン 8
dbMAGIC バージョン 7
サービ ス
dbMAGIC 8 の新機能
ビジュアル接続
dbMAGIC 8 の新機能
2
通信ゲートウェイ
DBMS
データベース
論理名
言語
プ リンタ
HTML スタイル
dbMAGIC 8 の新機能
プ リンタ属性
シークレット名
ユーザグループ
ユーザ ID
ログオン
関連ヘルプ表示
開発モード
「開発モード 」には、21 個のアイコンがあります。
[プログラム実行]および[ APG ]はともに新しいコマン
ドアイコンで、
[オプション]プルダウンメニューからアクセスすることもできます。
「チェックイン」、
「チェッ
クアウト 」および「アンチェック」は新しい機能アイコンで、
[ MVCS ]プルダウン メニューからアクセスす
ることができます。
図 2.2: dbMAGIC 8 の開発モード ツールバー
以下の表で、dbMAGIC 8 の開発モード アイコンと前バージョンの開発モード アイコンとを比較します。
dbMAGIC バージョン 8
dbMAGIC バージョン 7
アプリケーションオープン
アプリケーションクローズ
開発/実行モード
プログラム実行
dbMAGIC 8 の新アイコン
APG
dbMAGIC 8 の新アイコン
タイプ
テーブル
プログラム
ヘルプ
権利
メニュー
CTL イベント
CTL 特性
リポジトリ入出力
新機能ガ イド
dbMAGIC Ver.8.2
2.2 ツールバーボタン 2–3
dbMAGIC バージョン 8
dbMAGIC バージョン 7
フォーム
dbMAGIC 8 の新アイコン
フォーム表示
ブレ イクポイント設定
dbMAGIC 8 の新機能
チェックアウト
dbMAGIC 8 の新機能
チェックイン
dbMAGIC 8 の新機能
アンチェック
dbMAGIC 8 の新機能
関連ヘルプ表示
実行モード
「実行モード 」には、20 個のアイコンがあります。
図 2.3: dbMAGIC 8 の実行ツールバー
以下の表で、dbMAGIC 8 の実行アイコンと前バージョンの実行アイコンを比較します。
dbMAGIC バージョン 8
dbMAGIC バージョン 7
アプリケーションオープン
アプリケーションクローズ
開発/実行モード
修正
登録
照会
位置付
位置付/次候補
範囲
キー
ソート
入出力ファイル
レポートジェネレータ
関連ヘルプ表示
テーブル先頭
前画面
前行
次行
次画面
テーブル末尾
2–4
インタフェースと用語
新機能ガ イド
dbMAGIC Ver.8.2
バージョン管理モード
[バージョン管理]ツールバーには、6 個の新しいアイコンがあります。
「バージョン管理」についての詳細
は、「 15.2 MVCS メニュー」を参照してください。
ボタン
意味
印刷
メジャーレビジョン作成
変更区分作成
メジャーレビジョン表示
変更区分表示
マイナーレビジョン表示
2.3
ダイアログを使用した作業
タブ 付きページの採用によりダ イアログの構成が改善され 、関係のあるカテゴ リ毎にまとめられています。
dbMAGIC バージョン 8 の[ CTL 特性]、
[ 動作環境]等のダ イアログは、カテゴ リ別のタブ 付きページにな
りました。例えば 、
[ 動作環境]ダ イアログに関しては、以前の dbMAGIC バージョンでは一覧に 80 もの登
録項目がありましたが 、新バージョンでは各タブ付きページごとに平均 15 以下の項目しか表示されない 6 個
のタブ 付きページのダ イアログに改訂されています。
図 2.4: [ 動作環境]ダイアログ
2.4
式におけるツールチップ
開発モード で、
「式」欄にカーソルを置くと、式の内容がツールチップで表示します。ツールチップの表示秒
数は、
「設定/動作環境」ダ イアログの「動作設定」タブ 上のツールチップ表示タイムアウトで設定します。
新機能ガ イド
dbMAGIC Ver.8.2
2.3 ダ イアログを使用した作業 2–5
2
図 2.5: ツールチップ
2.5
処理コマンドの色定義
開発やメンテナンスを容易にする為に、処理テーブルの処理コマンド を色定義できるようになりました。各
処理コマンド の色は、基本色テーブルで定義した色を使用します。
図 2.6: 処理テーブル
2.6
デフォルト色とフォント
基本色とフォントテーブルの行数の制限(100行まで )がなくなりました。それぞれのテーブルで新規に
行が作成できるようになりました。
「設定/動作環境」ダ イアログの「動作設定」タブ中の「デフォルト色」や
「デフォルトフォント 」には、新しい行を作成した時の初期値となる色やフォントを指定します。アプリケー
ション内での色やフォント指定が無い場合の初期値として使用されます。
2–6
インタフェースと用語
新機能ガ イド
dbMAGIC Ver.8.2
2
図 2.7: 動作環境 - デフォルト 色とフォント
新機能ガ イド
dbMAGIC Ver.8.2
2.6 デフォルト色とフォント 2–7
2–8
インタフェースと用語
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第3章
3.1
3.2
3.3
3.4
3.5
3.6
3.7
新しいアクション、関数と機能
アプリケーション圧縮
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
GUI 形式プリント 機能 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
GUI 形式フォームエディタ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
ユニークソート : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
メインテーブルのカーソル動作 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
新しいアクション : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
新しい関数 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
3–2
3–3
3–5
3–6
3–6
3–6
3–7
第3章
新しいアクション、関数と機能
本章では、新しい[アプリケーション圧縮]機能、入出力ファイルの拡張された[プ リンタ]特性、GUI 形
式フォームなど 追加した機能および dbMAGIC 8 に固有のアクションおよび 、関数一覧について説明します。
3.1
アプリケーション圧縮
[アプリケーション圧縮]は、アプリケーションの CTL ファイルを圧縮する dbMAGIC バージョン 8 の新機
能です。ファイルを圧縮すると、アプ リケーションのサイズを大幅に縮小できます。したがって、特にデ ィ
スクスペースを節約する必要性がある場合には大変役に立ちます。
[圧縮]機能を有効化することで、dbMAGIC の CTL ファイルのサイズを縮小することができます。ただし 、
圧縮できるのは新しいアプリケーションだけです。既存のアプリケーションは圧縮できません。
[圧縮]欄を
有効化するときには、該当するアプ リケーションを選択してから、
[ 設定/アプ リケーション ]で[アプ リ
ケーション特性]ダ イアログを開きます。
図 3.1: [アプリケーション特性]ダイアログ
ただし 、圧縮を行うと、解凍処理のためにアプ リケーションの性能が制限されることがあるので、ディスク
スペースの節約が必要なときだけ使用するようにしてください。
3–2 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
3.2
GUI 形式プリント機能
入出力特性
[ メデ ィア]欄の形式が[ G=GUI 形式プ リント ]で出力する時に使用できる 3 つの新しい特性が 、
[ 入出力
3
特性]ダ イアログに追加されています。
■ 部数
■ 部数の式
■ 印刷の向き
■ 印刷プレビュー
用紙サイズ:D=デフォルト(デフォルト )
図 3.2: 入出力特性
[ 用紙サイズ ]欄では、GUI 形式プ リントで印刷できる用紙サイズを指定できます。
部数: 1(デフォルト )
GUI 形式プ リントで印刷する部数が指定できます。
(部数) 式
[ 式]テーブル内の式から求められる値を部数として指定できます。
注意:
[ 部数]欄と[ (部数) 式]欄は、同時に指定できません。
印刷の向き:P=縦方向(デフォルト )
印刷する方向が選択できます。ポートレート様式 (縦方向) またはランド スケープ様式 (横方向) のど ちらかを
指定できます。
新機能ガ イド
dbMAGIC Ver.8.2
3.2 GUI 形式プリント機能 3–3
印刷プレビュー:No(デフォルト )
エンド ユーザは、印刷プレビューウィンド ウから帳票のプレビューを確認し 、プ リンタを選択し 、印刷を実
行させることが出来ます。さらに、実行時、エンド ユーザが 、
「 入出力ファイル」ダ イアログの「 印刷プレ
ビュー」欄で指定することもできます。ここで指定した場合には、開発時の設定より優先されます。
注意:
印刷プレビュー機能は、GUI 形式印刷でのみ有効です。
エディット コント ロールの複数ページ印刷
クラス値が 1 以上のフォームでは、そのフォームで可変長のテキストデータを扱える場合、複数行エデ ィッ
トコントロール( 複数行にデータの入力が可能なエデ ィットコントロール )のサイズを動的に変更して印刷
することができます。
エデ ィットコントロールのサイズを動的に変更したい場合、
[フォーム特性]ダ イアログの[フォーム拡大]
欄を「 O=1ページ 」または、
「 M=複数ページ 」に設定します。これで、印刷時にエディットコントロールの
テキスト行がすべて収まるように、そのサイズが自動的に調整されます。また、エディットコントロールの下
にあるコントロールは、エディットコントロールが拡大された分だけ下に押し下げられます。さらに、フォー
ム自体も、エデ ィットコントロールが大きくなった分だけ、そのサイズが拡大されます。
■ O= 1ページ
…
■ M=複数ページ …
1ページ内に収まるようにコントロールは拡大されます。
複数ページにまたがって拡大されます。
なお、テーブルコントロールに複数行エディットコントロールが定義されている場合、
テーブルの外に拡張コントロールが含まれていない場合に限り複数ページにまたがっ
て印刷できます。この場合、
[フォーム拡大]欄は「 O=1ページ 」と設定したときと
同じようになります。
図 3.3: フォーム特性 - フォーム拡大
3–4 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
3.3
GUI 形式フォームエディタ
プッシュボタン - ハイパーリンクスタイル
dbMAGIC バージョン 8 ではハイパーリンクの動作を持つプッシュボタンが定義できるようになりました。
「コントロール特性」ダ イアログの「 詳細」タブで「ボタン スタイル」をハイパースタイルに設定したとき
は、dbMAGIC のアクションがプッシュボタンにリンクされます。このアクションは、
「アクション 」欄から
ズームすると表示されるアクションリストから選択します。このスタイルのとき、プッシュボタンは 2D イ
メージとなり、コントロールラベルがアンダーライン付きで表示されるようになります。
図 3.4: コント ロール特性 - ボタンスタイル
ツールチップ
dbMAGIC バージョン 8 ではエンド ユーザにツールチップ表示するヘルプを提供し ます。ツールチップは該
当するタイプのコントロールにカーソルが移ったときに自動的に表示されるヘルプです。ツールチップをタ
イプに連動させるには、
「コントロール特性」ダ イアログの「入力」タブで「ツールチップ 」欄でズームする
とヘルプ一覧が表示されます。ここでツールチップとして作成されたヘルプを選択します。ヘルプ一覧から
さらにズームすることでヘルプ リポジトリに入り、ヘルプを追加することが出来ます。ツールチップの表示
秒数は「設定/動作環境」ダ イアログの「動作設定」タブ 上のツールチップ表示タイムアウトで設定します。
新機能ガ イド
dbMAGIC Ver.8.2
3.3 GUI 形式フォームエデ ィタ 3–5
3
図 3.5: コント ロール特性 - ツールチップ
3.4
ユニークソート
ユニークソートは、ソートで使用するカラムがユニークであることを定義するものです。
「 Yes 」の場合、SQL
テーブルに対して Order By 句を発行する際に位置の値を指定する必要が有りません。もしソートセグ メント
にユニークなインデックスが含まれていればユニークと定義し 、含まれていなければユニークではないと定
義します。
3.5
メインテーブルのカーソル動作
メインテーブルのカーソル動作がバージョン 8 で変更されました。前もって カーソルが最後のレコード に
;
移動後、エンド ユーザーが下矢印( ラインモード 場合)または 、 PgDn キー( スクリーンモード の場合)
を押下した場合や、カーソルが先頭のレコード に移動後、
「前行」または、
「前画面」を実行した場合に、存
在しない新しいレコード のデータを取り出す時に 、カーソルは一旦クローズされ 、再度オープンされます。
このような時に、データベースの読み取り時間がかかり、オーバーヘッドが増大されていました。
バージョン 8 では、キャッシュ範囲を「位置」または、
「位置とデータ」に設定した場合で、メインテーブル
のカーソルが 、最後のレコード に移動した時には 、
「 次行」と「 次画面」が使用できなくなります。同様に
カーソルが 、先頭のレコード に移動した時には、
「前行」と「前画面」が使用できなくなります。
3.6
新しいアクション
レコード 書き込み
レコード 書き込みアクションを使うと、そのレコード からカーソルを移動させることなく、移動した時と同
様の動作をさせることができます。このアクションは、オンラインタスクでのみ使用することがができます。
3–6 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
画面再表示
画面再表示アクションを使うと、画面のスクロールを行うことなしに、画面に表示されているレコード 内容
の表示更新を行うことができます。実行モードにおいて、このアクションが発行されると、dbMAGIC 実行エ
ンジンの制御は現在のレコード から抜け、画面表示されているレコード 位置にしたがって、すべてのレコー
ド 内容を再度フェッチします。カーソルは、基本的に現在の位置に止まります。
3
ビュー再表示
ビュー再表示アクションを使うと、画面のスクロールを行わずに、現在のデータビューを更新します。実行
モード において、このアクションが発行されると 、dbMAGIC の実行エンジンの制御は、現在のレコード か
ら抜け、そのときの位置キャッシュをクリアし 、現在のレコード 位置を開始位置としてカーソルをオープン
しなおし 、レコード を再度フェッチします。その時、インデックスの設定が片方向のみの場合、現在のレコー
ドが表示上の最初のレコード となり、それ以前のレコード は表示されなくなります。
3.7
新しい関数
BLB2FILE BLOB オブジェクト のファイル化
BLOB オブジェクトをファイルに保存します。
構文:
BLB2FILE (BLOB 項目, ファイル名)
パラメータ: BLOB
項目 … BLOB 型の項目のシンボル名
ファイル名 … 保存先のファイル名。文字列。
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
BLB2FILE(BE, ‘C:Y
=bfile.blb’) では、BLOB 項目である BE の内容が 、C ド ライブの
bfile.bl という名前のファイルに保存されます。
CALLDLL DLL の呼び出し
dbMAGIC の内部から DLL をダ イナミックに直接呼びだすことができます。
構文:
CALLDLL (モジュール名. 関数名, 引数型文字列, 引数1, 引数2,...)
パラメータ: モジュール名
. 関数名 … DLL のモジュール名と使用する関数名
引数型文字列
… 一つ一つの文字が引数の型を意味する文字列
最後の一文字が関数の戻り値の型を意味する。引数型文字
と意味する型は次のとおり
1 − char
2 − short
4 − long
F − float
8 − double
D − double pointer
新機能ガ イド
dbMAGIC Ver.8.2
3.7 新しい関数 3–7
E − float pointer
L − long pointer
A − null で終了する文字列 pointer
V − void pointer
0 − void
引数1, 引数2
… DLL への引数
戻り値:
DLL 内の指定した関数が返す値
例:
CALLDLL(’mydll.lmath‘,’1L44’,action,a,b)
対応する C 関数は、long lmath(char action, long *a, long b) となり、DLL 内の関数で
ある lmath からの戻り値が返ります。
CALLDLL(’mydll.add str’,’AAA’,a,b) 対応する C 関数は char *add str(char *a, char *b)
となり、DLL 内の関数の add str からの戻り値が返ります。
CHEIGHT コント ロールの高さ 指定したコントロール 、またはカーソルが最後にパークしたコントロールの高さを返します。
構文:
CHEIGHT(コントロール名, タスク番号)
パラメータ: コントロール名
… 指定するコントロールの名前。
ヌル文字列( ‘’ )を指定した場合、カーソルが最後にパークして
いるコントロールが対象となります。
タスク番号
… タスクツリー表示における、タスクの階層的位置を示す数値です。
たとえば 、0 はそのタスク自身であり、1 はすぐ 上位の親タスク
を意味します。
戻り値:
フォームの設定単位での値。
例:
CHKDGT(‘6789’,0) では、2 が返ります。
また、x が文字列 ‘6789’ の場合、CHKDGT(x,0) では 2 が返ります。
CHKDGT(‘6789’,1) では、1 が返ります。
注意事項:
パーク可能コントロールだけが有効な値を返します。パーク可能コントロールとは、データを持つ
コントロールやアクションを返すコントロールのことで、具体的には次のものがあります。
チェックボックス, コンボボックス, エデ ィットコントロール, イメージコントロール, リスト
ボックス, OLE コントロール, プッシュボタン, ラジオボタン, リッチエディットコントロール,
スライダ, タブコントロール
CLEFT コント ロール フォーム内左位置( Y 座標) 指定したコントロール、またはカーソルが最後にパークしたコントロールのフォーム内での Y 座標
値を返します。
構文:
CLEFT(コントロール名, タスク番号)
3–8 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
パラメータ: コントロール名
… 指定するコントロールの名前。
ヌル文字列( ‘’ )を指定した場合、カーソルが最後にパークして
いるコントロールが対象となります。
タスク番号
… タスクツリー表示における、タスクの階層的位置を示す数値です。
たとえば 、0 はそのタスク自身であり、1 はすぐ 上位の親タスク
を意味します。
戻り値:
3
フォームの設定単位での値
注意事項:
パーク可能コントロールだけが有効な値を返します。パーク可能コントロールとは、データを持つ
コントロールやアクションを返すコントロールのことで、具体的には次のものがあります。
チェックボックス, コンボボックス, エデ ィットコントロール, イメージコントロール, リスト
ボックス, OLE コントロール, プッシュボタン, ラジオボタン, リッチエディットコントロール,
スライダ, タブコントロール
CLEFTMDI コント ロールの左辺位置 MDI
指定したコントロール、またはカーソルが最後にパークしたコントロールの、MAGIC MDI 基準で
の Y 座標値を返します。
構文:
CLEFTMDI(コントロール名, タスク番号)
パラメータ: コントロール名
… 指定するコントロールの名前。
ヌル文字列( ‘’ )を指定した場合、カーソルが最後にパークして
いるコントロールが対象となります。
タスク番号
… タスクツリー表示における、タスクの階層的位置を示す数値です。
たとえば 、0 はそのタスク自身であり、1 はすぐ 上位の親タスク
を意味します。
戻り値:
フォームの設定単位での値
注意事項:
パーク可能コントロールだけが有効な値を返します。パーク可能コントロールとは、データを持つ
コントロールやアクションを返すコントロールのことで、具体的には次のものがあります。
チェックボックス, コンボボックス, エデ ィットコントロール, イメージコントロール, リスト
ボックス, OLE コントロール, プッシュボタン, ラジオボタン, リッチエディットコントロール,
スライダ, タブコントロール
CLRCACHE クリアキャッシュ
カレントタスクのデータキャッシュをクリアし 、MAGIC が直接データベースからレコード を読むよ
うにします。この関数はオンラインタスクでのみ有効です。
構文:
CLRCACHE()
パラメータ: なし
戻り値:
論理値
… 処理が成功した場合に返されます。
True
False … 処理が失敗した場合に返されます。
新機能ガ イド
dbMAGIC Ver.8.2
3.7 新しい関数 3–9
CNDRANGE 条件付き範囲指定
項目の値に関する条件付き範囲を指定できます。
構文:
CNDRANGE (条件, 値)
パラメータ: 条件
… 実行時に評価される論理式
値
… 条件が True のときに戻り値として返される値
戻り値:
指定した値
例:
CNDRANGE (‘ True ’L,10 ) では、10 が返ります。一方、CNDRANGE (‘False’L, 20)
は、実行されません。
注意事項:
この関数はセレクトコマンド の位置付と範囲にのみ使用できます。また、この関数は他の式の一部
としては使用できません。CNDRANGE(条件, 値) を範囲の小大に指定すると、範囲小に IF(条件, 値,
最小値) を設定し 、範囲大に IF(条件, 値, 最大値) を設定した場合とほぼ同等の動作をします。項目特
性の NULL 値許可の設定に関わらず同一の式を使用できます。また、SQL ではより適切な WHERE
句が発行できます。これによって、範囲処理に関わる SQL 文が出力されなくなるため、処理の高速
化が図れます。
たとえば 、
[ 範囲]欄の大の欄に CNDRANGE(A<>0,A) とした場合、A に 0 以外の数値が設定さ
れている場合、A を最大値とした範囲値となりますが 、A が 0 の場合、この指定は範囲条件として
は処理されません。
CTOP コント ロールの上辺位置
指定したコントロール 、または最後にパークしていたコントロールの Y 座標値を返します。
構文:
CTOP(コントロール名, タスク番号)
パラメータ: コントロール名
… 指定するコントロールの名前。
ヌル文字列( ‘’ )を指定した場合、カーソルが最後にパークして
いるコントロールが対象となります。
タスク番号
… タスクツリー表示における、タスクの階層的位置を示す数値で
す。たとえば 、0 はそのタスク自身であり、1 はすぐ 上位の親タ
スクを意味します。
戻り値:
フォームで設定した寸法単位での値
注意事項:
パーク可能コントロールだけが有効な値を返します。パーク可能コントロールとは、データを持つ
コントロールやアクションを返すコントロールのことで、具体的には次のものがあります。
チェックボックス, コンボボックス, エデ ィットコントロール, イメージコントロール, リスト
ボックス, OLE コントロール, プッシュボタン, ラジオボタン, リッチエディットコントロール,
スライダ, タブコントロール
CTOPMDI コント ロール上辺位置 MDI 指定したコントロール、または最後にパークしていたコントロールの、MAGIC MDI 基準の Y 座標
値を返します。
構文:
CTOPMDI(コントロール名, タスク番号)
3–10 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
パラメータ: コントロール名
… 指定するコントロールの名前。
ヌル文字列( ‘’ )を指定した場合、カーソルが最後にパークして
いるコントロールが対象となります。
タスク番号
… タスクツリー表示における、タスクの階層的位置を示す数値で
す。たとえば 、0 はそのタスク自身であり、1 はすぐ 上位の親タ
スクを意味します。
戻り値:
3
フォームで設定した寸法単位での値
注意事項:
パーク可能コントロールだけが有効な値を返します。パーク可能コントロールとは、データを持つ
コントロールやアクションを返すコントロールのことで、具体的には次のものがあります。
チェックボックス, コンボボックス, エデ ィットコントロール, イメージコントロール, リスト
ボックス, OLE コントロール, プッシュボタン, ラジオボタン, リッチエディットコントロール,
スライダ, タブコントロール
CTRLHWND コント ロールのウィンド ウハンド ル
コントロールのウィンド ウハンド ル値を返します。
構文:
CTRLHWND(コントロール名)
パラメータ: コントロール名
… フォームエデ ィタで指定されるコントロール名
戻り値:
。この値はユーザ関数( UDF )また
ウィンド ウハンド ル値( 4 バイトのロング数値)
はユーザプロシージャ( UDP )へ渡すことができます。
例:
CTRLHWND(‘Olecontrol’)
Olecontrol はフォーム( クラス 1 以上)上のコントロール名です。関数はこのコント
ロールのウィンド ウズハンドル値を返します。
注意事項:
具体的には次のコントロールで利用できます。
ラジオボタン,リストボックス,OLE コントロール,プッシュボタン,コンボボックス,スライダ,
リッチエデ ィットコントロール,テキストコントロール,チェックボックス
CWIDTH コント ロールの幅
指定したコントロールまたはカーソルが最後にパークしたコントロールの幅の値を返します。
構文:
CWIDTH(コントロール名, タスク番号)
パラメータ: コントロール名
… 指定するコントロールの名前。
ヌル文字列( ‘’ )を指定した場合、カーソルが最後にパークして
いるコントロールが対象となります。
タスク番号
… タスクツリー表示における、タスクの階層的位置を示す数値で
す。
たとえば 、0 はそのタスク自身であり、1 はすぐ 上位の親タスク
を意味します。
戻り値:
新機能ガ イド
dbMAGIC Ver.8.2
フォームで設定した寸法単位での値
3.7 新しい関数 3–11
DBCOPY データベーステーブルのコピー
この関数を使用して、既存のデータテーブルのコピーが可能です。データのほか、定義もコピーさ
れます。この DBCOPY は、ISAM と SQL の両方のファイルに使用できます。
構文:
DBCOPY (番号, 元テーブル , 新テーブル )
パラメータ: 番号
… [テーブル]リポジトリに定義されているテーブルを示す番号(連番)
です。
元テーブル … コピー元のテーブル名です。
[テーブル]リポジトリの DB テーブル欄
に指定された名前と違う名前を指定する場合に使用するオプション。
新テーブル … コピー先のテーブル名です。
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
注意事項:
次の場合、DBCOPY 関数からは False が返ります。
・ 元テーブルが現在オープン中
・ 元テーブルが常駐テーブルである
・ 元テーブルが存在しない:このときには、
「テーブルがみつかりません:テーブル名」という
エラーメッセージが表示されます。
・ 新テーブルがすでに存在している:このときには、
「目的のテーブルは既に存在しています。
テーブルの作成に失敗しました:テーブル名」というエラーメッセージが表示されます。
・ 元テーブルがビューの場合:このときには、
「ビューの消去/コピーができません。ビュー:
テーブル名」というエラーメッセージが表示されます。
・ 上記以外のエラーの場合:このときには、
「コピーに失敗し ました。テーブル:元テーブル」
というエラーメッセージが表示されます。
DBDISCNT 現在のデータベース接続の切断
パラメータでデータベースを指定し 、そのデータベースの現在の接続を切断します。DBDISCNT は、
SQL データベースに関連した関数です。現在接続しているデータベースにおいて、オープンしてい
るカーソルが存在しない場合にのみ、その切断を行うことが許可されています。カーソルがオープ
ンされている状態で DBDISCNT 関数が起動された場合には、エラーメッセージが表示されます。現
在のデータベース接続の切断は、アプ リケーションで必要のなくなったデータベースからユーザを
切断したり、あるいは別のユーザをそのデータベースに接続するために既接続ユーザを切断したり
する目的で行われます。
構文:
DBDISCNT(文字列)
パラメータ: 文字列
… データベース名を意味する英文字列
戻り値:
論理値( True / False )
True
… 切断に成功した場合に返されます。
False
… 切断に失敗したか、あるいは接続そのものが存在しない場合に返されます。
3–12 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
例:
DBDISCNT(‘MSSQL’)
このとき、MSSQL はデータベーステーブルで定義されているデータベース名を指定
します。
DISCSRVR 不必要なサーバ接続の切断
3
この関数は、不必要なサーバ接続を開放します。
構文:
DISCSRVR(文字列)
パラメータ: 文字列
… サーバテーブルで定義されたサーバ名称
戻り値:
論理値
… 指定したサーバとの接続が正常に解除されたときに返されます。
True
False … 切断が以下の理由のどれかにより失敗したときに返されます。
・ サーバテーブルにない名称でサーバ指定した
・ 該当サーバへの接続がなされていなかった
・ MAGIC はそのサーバとの接続がまだ必要な状態にある
・ 切断処理そのものに失敗した
EUROCNV 通貨換算
通貨換算テーブルに登録された基準通貨(ユーロ)への換算率に基づく、通貨間の換算結果を返す。
構文:
EUROCNV(From,To, 値)
パラメータ: From
… 換算元となる通貨( 文字型)
To
… 換算後の通貨( 文字型)
値
… 換算元の通貨単位で示される換算対象となる数値( 数値型)
戻り値:
換算後の通貨単位で示される数値
例:
EUROCNV( ’ITL’,’DEM’,A ) A 値をイタリアリラからド イツマルクに換算しま
す。
EUROCNV( ’ITL’,’EURO’,50*B ) B 値を 50 倍し 、イタリアリラからユーロに換
算します。
EUROCNV( A,B,C ) C 値を通貨 A から通貨 B の値に換算します。
注意事項:
1. パラメータ( 通貨コード )は4桁固定長で使用してください。
2. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プログラム終了
時にはもとの設定値に戻ります。設定値を保存する場合は 、通貨変換ファイルをエディタ等
で編集してください。
3. 通貨変換ファイルは、1ユーロに対する比率で設定します。
新機能ガ イド
dbMAGIC Ver.8.2
3.7 新しい関数 3–13
EURODEL 通貨の削除
通貨換算テーブル (ECCT) から、通貨コード を削除する。
構文:
EURODEL(通貨名)
パラメータ: 通貨名
… 通貨換算テーブル( ECCT )に登録されている通貨コード 名称。
戻り値:
数値
0 … 指定された通貨コード の削除が成功した場合に返されます。
1 … 指定した通貨コードが存在しない場合に返されます。
5 … 指定した通貨コードが ”EURO”の場合に返されます。
9 … 通貨コードが設定されたいない場合に返されます。
例:
EURODEL(‘FRF’) ECCT からフランスフランの通貨データを削除します。
注意事項:
1. パラメータ( 通貨コード )は4桁固定長で使用してください。
2. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プログラム終了
時にはもとの設定値に戻ります。設定値を保存する場合は 、通貨変換ファイルをエディタ等
で編集してください。
EUROGET 基準通貨コード の取得
実行時に基準通貨コード を取得します。
構文:
EUROGET()
パラメータ: なし
戻り値:
基準通貨コード
例:
CTL 特性の基準通貨特性が ”EURO” の場合、EUROGET() は、”EURO”を返します。
EUROSET 基準通貨の変更
実行モード 時に基準通貨を変更します。
構文:
EUROSET(通貨コード )
パラメータ: 通貨コード
… 通貨コード に対応した文字列
戻り値:
数値
0 … 基準通貨が正常に変更された場合に返されます。
1 … 指定した通貨コードが存在しない場合に返されます。
例:
EUROSET(‘FRF’) の実行により、基準通貨はフランスフランになる。
3–14 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
注意事項:
1. アプリケーションの基準通貨特性を変更することにより、通貨値として表示されている。デー
タベース値も自動的に修正されます。
2. パラメータ( 通貨コード )は4桁固定長で使用してください。
3. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プログラム終了
時にはもとの設定値に戻ります。設定値を保存する場合は 、通貨変換ファイルをエディタ等
で編集してください。
4. 通貨変換ファイルは、1ユーロに対する比率で設定します。
EUROUPD 通貨換算テーブルの更新 通貨換算テーブルの登録内容を更新する。
構文:
EUROUPD(通貨コード , 通貨名称, 換算精度, 基準換算率)
パラメータ: 通貨コード
… 4 バイト以内の通貨コード
通貨名称
… 20 バイト以内の通貨名称
換算精度
… 換算後の小数点以下の桁数を示す数値で0,1,2で指定。換算結果
は四捨五入。
基準換算率 … 基準通貨1単位に対するその通貨の換算値
戻り値:
数値)
0 … 内容の登録・修正が正常に行われた場合に返されます。
1 … 正常に更新できない場合返されます。
2 … 基準換算率が 0 の場合に返されます。
3 … 通貨コードが ”EURO” で基準換算率が 1 以外の場合に返されます。
4 … 換算精度が 0,1,2 以外の場合に返されます。
9 … 通貨コードが設定されたいない場合に返されます。
10 … 通貨名称が指定されていない場合に返されます。
注意事項:
1. 指定した通貨コードが存在しないときは、通貨換算テーブルに追加登録されます。
2. パラメータ( 通貨コード )は4桁固定長で使用してください。
3. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プログラム終了
時にはもとの設定値に戻ります。設定値を保存する場合は 、通貨変換ファイルをエディタ等
で編集してください。
4. 通貨変換ファイルは、1ユーロに対する比率で設定します。
EXPCALC 式の実行
指定した定義式を実行します。
構文:
EXPCALC (式番号)
パラメータ: 式番号
… 実行する式の番号。
新機能ガ イド
dbMAGIC Ver.8.2
3.7 新しい関数 3–15
3
戻り値:
指定した式の評価後の値。
注意事項:
式としては、次のいずれかを指定できます。
1. EXP リテラル
2. 定数値
3. 変数項目
例:
EXPCALC(‘2’EXP) では、
[ 式]テーブルの 2 番目の式が実行されます。
EXPCALC(BA) では、位置 2( BA )の式が実行されます。
FILE2BLB ファイルを BLOB に変換
ファイルを BLOB オブジェクトに保存します。
構文:
FILE2BLB (ファイル名)
パラメータ: ファイル名
… ファイル名( 文字列)
。
戻り値:
BLOB
… BLOB オブジェクトとして格納されたファイル。
例:
FILE2BLB(‘C:Y
=att1.rtf’) では、ファイル「 att1.rtf 」が BLOB 項目に格納されます。
FILE2REQ ファイルの送信
指定されたファイルの内容を MAGIC リクエスタブローカ (MRB) に送信します。
構文:
FILE2REQ (ファイル名)
パラメータ: ファイル名
… ファイル名( 文字列)
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
FILE2REQ(‘C:Y
=att1.doc) では 、リクエスタに「 file att1.doc 」というファイルが送ら
れます。
注意事項:
リモートコールで起動されたプログラムで実行することで、同期型で起動した起動元のプログラム
の [結果ファイル ] に保存されます。
FLWMTR フローモニターにメッセージを追加
dbMAGIC フローモニターに メッセージを追加します。
構文:
FLWMTR(文字列, 論理ブレ イク)
パラメータ: 文字列
… dbMAGIC フローモニターに表示させる文字列
論理ブレ イク … 「 True 」を指定すると、フロー処理の実行が中断されます。(ブレ イ
クポイントと同じ働きをします。) 以降は、フローモニタのステッ
プ イン 、ステップオーバ 、継続 によってフロー処理の実行が制御
されます。
3–16 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
戻り値:
論理値
… 次のフロー処理で実行が中断された場合に返されます。
True
False … 中断されない場合に返されます。
GETPARAM パラメータの取得
3
プログラムにグローバルパラメータとして渡されているパラメータの値を取得します。
構文:
GETPARAM (パラメータ名)
パラメータ: パラメータ名
… グローバルパラメータの名前
戻り値:
データ
… データ型は、
[パラメータ名]で指定したパラメータのデータ型になります。
注意事項:
項目のデータ型がパラメータのデータ型と異なる場合、結果が異常になることがあります。
パラメータ名を指定しなかったときには、NULL が返ります。
dbMAGIC インターネットプログラムでグローバルパラメータとして HTTP 環境変数が渡されたと
きにも、この関数を使用して値を取り出すことができます。
例:
GETPARAM(‘Name’) では、
[コールプログラム]コマンド、
[コールリモート ]コマ
ンドでグローバルとして渡された ‘Name’ パラメータの値が返ります。ハイパーリン
クを介して渡されたときも同じです。
INIGETLN MAGIC.INI ファイルの値の取得
セクションと行番号を指定し 、MAGIC.INI ファイルの値を取り出すことができます。
構文:
INIGETLN (セクション名, 行番号)
パラメータ: セクション名
… 値を取り出す行が置かれているセクションの名前
行番号
戻り値:
例:
… 値を取り出す行番号
指定した行の値( 文字列)
。
INIGETLN (‘[MAGIC ENV]’,3) では、MAGIC.INI ファイルの MAGIC ENV セクショ
ンで 3 番目の行の値が返ります。
注意事項:
指定した行番号が 1 より小さい場合、空白の文字列が返ります。
最初の空白の行を指定すると 、空白の文字列が返ります。
区切文字として、スペースは使えません。
INTRANS オープント ランザクションのチェック
トランザクションが現在オープンしているかど うかをチェックします。
構文:
INTRANS ()
パラメータ: なし
戻り値:
新機能ガ イド
dbMAGIC Ver.8.2
論理値
3.7 新しい関数 3–17
ISDEFAULT デフォルト 値のチェック
項目の値が 、デフォルト値であるかど うかをチェックします。
構文:
ISDEFAULT (項目のシンボル名)
パラメータ: 項目のシンボル名
… デフォルト値であるかど うかをチェックする項目のシンボル名。
[ 項目一覧]で表示される値を指定します。
戻り値:
論理値
… 項目の値がデフォルト値である場合に返されます。
True
False … 項目の値がデフォルト値でない場合に返されます。
例:
ISDEFAULT (’C’VAR) では、項目 C の値がデフォルト値([カラム特性]ダ イアログ
で指定した値)であるかど うかがチェックされます。
注意事項:
シンボル名には必ず VAR リテラルを設定してください。設定しないと正常に動作しません。
IOSIZE ファイルサイズの照会 (ディスク上) デ ィスク上のファイルのサイズを返します。
構文:
IOSIZE(ファイル名)
パラメータ: ファイル名
… サイズを取り出すファイルの名前。パスを指定することもできます。
パスを指定しなかった場合、カレントのディレクトリに対して検索が
行われます。
戻り値:
数値
例:
IOSIZE(‘c:Y
=magicY
=magic.ini’) では 、C ド ライブの magic デ ィレ クト リの magic.ini
ファイルのサイズが返ります。
関連項目:
IOCOPY 、IODEL 、IOEXIST 、IOREN
LASTPARK 最後にパークしたコント ロール
指定タスクのフォーム内で、最後にカーソルがパークしていたコントロール名を返します。
構文:
LASTPARK(タスク番号)
パラメータ: タスク番号
… タスクツリーで示されるタスクの階層的位置を示す数値。
0 はそのタスク自身を、1 はそのすぐ 上位の親タスクを指定し 、以下
同様です。
戻り値:
ユーザが最後にカーソルをパークしていたコントロール名
例:
LASTPARK(1)
親タスクで最後にカーソルがパークしていたコントロール名を返します。
関連項目:
CTOP 、CLEFT 、CTOPMDI 、CWIDTH 、CHEIGHT
3–18 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
LOGON アプリケーションログオン
一時的に指定されたユーザとして現在のアプ リケーションにアクセスできます。プログラム終了時
には以前のユーザに戻ります。
構文:
LOGON(ユーザ ID, パスワード )
パラメータ: ユーザ名
… ユーザ名を表す文字列
3
パスワード … パスワード を表す文字列
戻り値:
実行の成否を示す論理値。
例:
LOGON(’GIL’,’PASS123’)
この関数は、
「設定/ログオン 」と同様の動作をします。ただし 、LOGON 関数では
ユーザ名とパスワード をバッチモード で処理します。
RQEXE リモート アプリケーションの起動 MRB が起動しているコンピュータにリクエストを送り、指定された実行可能ファイルをロード す
るように指示します。
構文:
RQEXE (サービ ス/サーバ名, 実行登録名, 引数, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
実行登録名
… MGRB.INI ファイル内の [MRB EXECUTABLES LIST]
または [MRB REMOTE EXECUTABLES LIST] セク
ションに設定された実行ファイルリストを表す文字列。
引数
… ロードする実行ファイルのオプションの引数(例: /Star-
tApplication=5 )
。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
注意事項:
MRB は、実行可能ファイルを非同期コールでロードします。このため、MRB に対するアクセスが
許可され 、実行可能ファイルが読み込み可能の状態になったときに、戻り値が返ります。
例:
RQEXE (‘Default Broker’,‘Online’,‘/StartApplication=5’,‘Secret’)
RQLOAD リクエスタのロード
サービ スの起動に関する統計情報を提供します。
構文:
RQLOAD (サービ ス/サーバ名, 参照用パスワード )
パラメータ: サービ
ス/サーバ名 … [サービス/サーバ ] テーブルに登録されている [サーバ/サー
ビ ス] 名
参照用パスワード … MRB の参照用パスワード を定義する文字列。(MGRB.INI の
’PasswordQuery’ の指定内容)
新機能ガ イド
dbMAGIC Ver.8.2
3.7 新しい関数 3–19
戻り値:
情報がコンマで区切られた文字列で返ります。情報の種類と形式は次の通りです。
平均待ち時間
… 小数点以下が 2 桁の浮動小数点数値
リクエストの合計数
… 数値
保留/待ち行列内のリクエスト数 … 数値
処理中のリクエスト数( 実行時) … 数値
例:
実行済みのリクエスト数
… 数値
実行に失敗したリクエスト数
… 数値
RQLOAD(‘Default Broker’,‘Secret’)
注意事項:
サービ ス名が不適当な場合、処理に失敗するとともに空白の文字列が返ります。また、パスワード
がスーパーバイザのパスワード でなかったときには、処理に失敗します。
RQQUEDEL リクエスタのキューの削除 サービ スキューのエントリを削除できます。
構文:
RQQUEDEL (サービ ス/サーバ名, リクエスト ID, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
リクエスト ID
… キュー上のエントリを示す文字型の数値
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
RQQUEDEL(‘Default Broker’, BA”)
上記の場合、変数項目 BA のリクエスト ID を使用して、削除が実行されます。
注意事項:
サービ ス名やリクエスト ID が不適当な場合、処理に失敗するとともに「 False 」が返ります。スー
パーバイザパスワードを空白の文字列にしたときには、カレントのユーザに関連するエントリだけが
削除されます。パスワードがスーパーバイザのパスワード でなかったときには、処理に失敗します。
RQQUELST リクエスタのキュー一覧
キューで待機状態にあるエントリの数を取り出せます。
構文:
RQQUELST (サービ ス/サーバ名, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
3–20 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
戻り値:
指定したサービ スのキューで待機状態にあるエントリの数
例:
RQQUELST(‘Default Broker’ ,‘Secret’)
RQQUEPRI リクエスタのキューの優先度を変更 キューで待機状態にあるリクエストの優先度をリセットできます。
構文:
3
RQQUEPRI(サービス/サーバ名, リクエスト ID, 新優先順位, スーパーバイザパスワー
ド)
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
リクエスト ID
… キュー上のエントリを示す数値( 0 から 9 )
新優先順位
… 新規( 変更後)の優先順位を示す数値
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
RQQUEPRI(‘Default Broker’, BA, C)
上記では、変数項目のリクエスト ID を使用して処理が行われます。このリクエスト
ID は、
[コールリモート ]コマンド で返った値です。
注意事項:
サービ ス名やリクエスト ID 、新優先順位が不適当な場合、処理に失敗するとともに「 False 」が返
ります。パスワードがスーパーバイザのパスワード でなかったときには、処理に失敗します。
RQREQINF リクエスタのリクエスト ID 情報
キューまたは MRB の履歴ログから作られるリストによって、リクエスト ID 情報を取得します。こ
の関数を呼ぶ前に、RQQUELST または RQREQLST が呼ばれている必要があります。
構文:
RQREQINF (サービ ス/サーバ名, 登録番号)
パラメータ: サービ
ス/サーバ名 … [サービ ス/サーバ ] テーブルに登録されている [サーバ/サー
ビ ス] 名
登録番号
戻り値:
… キューのエントリを示す数値。
コンマで区切られる、以下の情報が返ります。
リケーション名 … リクエストに関連するアプ リケーションの名前
アプ
新機能ガ イド
dbMAGIC Ver.8.2
プログラム名
… 実行されるプログラムの公開プログラム名
ユーザ名
… アプ リケーションにアクセスを行うユーザの名前
優先順位
… 実行の優先順位
送信ホスト
… リクエストの送り先のホスト
PID
… リクエストを提出したクライアントのプロセス ID
送信時刻
… 要求が送られたときの時刻 (HH:MM:SS)
3.7 新しい関数 3–21
実行経過時間
… リクエストが実行された秒数
リクエスト ID
… リクエストにつけられたリクエスト ID
ステータス
… リクエストのステータス
・ 1 - 待機
・ 2 - 実行中
・ 3 - 実行完了
・ 4 - 失敗
・ 5 - クリア
例:
リクエスタ戻り値
… 実行時の戻り値
DBMS 戻り値
… 実行時の戻り値(たとえば 、エラー発生の際の戻りコード )
RQREQINF (‘Default Broker’, C)
上記では、変数項目「 C 」に RQREQLST 関数の実行によって取得されたキューの数
をもとにエントリ番号を設定することで、RQREQLST 関数が実行させることができ
ます。
注意事項:
この関数の前に呼ばれた RQQUELST または RQREQLST でのスーパーバイザパスワードのパラメー
タ設定が空の場合、現在のユーザが提出したリクエストに関する情報のみが返されます。
サービ ス/サーバ名,エントリ番号,スーパーバイザパスワードが不正な場合、何も返されません。
RQREQLST リクエスタのキュー一覧
MRB のログ情報から、リクエスト ID の範囲により指定されるリクエストエントリの数を返します。
構文:
RQREQLST (サービ ス/サーバ名, 最小リクエスト ID, 最大リクエスト ID, スーパーバ
イザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
最小リクエスト ID
… リクエスト ID の最小値。
最大リクエスト ID
… リクエスト ID の最大値。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
指定した範囲に該当するリクエストエントリの数
例:
RQREQLST(‘Default Broker’, BA, BB,‘Secret’)
注意事項:
パスワード を空白の文字列にしたときには、カレントのユーザが提出したリクエストに関する情報
だけが表示されます。サービ ス/サーバ名、最小リクエスト ID 、最大リクエスト ID 、スーパーバイ
ザパスワード のいずれかが不適当だった場合、空白の文字列が返ります。
3–22 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
RQRTAPP リクエスタ対応アプリケーションの情報
MRB に登録された一つまたは複数の実行エンジンがサポートする、ある一つのアプ リケーション
に関する情報を返す。
構文:
RQRTAPP (サービ ス/サーバ名, アプ リケーション番号)
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サーバ/
3
サービ ス] 名
アプ リケーション番号 … アプリケーションの内部番号を示す数値。ここで指定する
アプ リケーションは、RQRTAPPS 関数で検索したものの
いずれかでなければなりません(したがって、この関数は、
RQRTAPPS 関数の後で使います)。
戻り値:
コンマで区切られた、以下の文字列情報が返ります。
リケーション名 … アプ リケーションの名前。すべてのアプ リケーションを要
アプ
求した場合( RQRTAPPS 関数で、
[実行エンジン番号]パラ
メータを「 0 」にした場合)、次の情報も返ります。
例:
ホスト名
… 実行エンジンが起動されるホストの名前
ポート番号
… 実行エンジンのチェック対象となるポートの番号
RQRTAPP(‘Default Broker’, BD)
上記では 、数値型の変数項目 BD に格納されているアプ リケーション番号を使用し
て処理が行われます。このアプ リケーション番号は、RQRTAPPS 関数の実行により
与えられます(アプ リケーション番号は、RQRTAPPS 関数で指定した実行エンジン
番号によって異なってきます)。また、アプ リケーション番号は、RQRTS 関数を実
行したときにも返ります。
RQRTAPPS リクエスタのアプリケーションに数
MRB の実行エンジンを指定し 、その実行エンジンでサポートされているアプ リケーションの数を
取り出すことができます。
構文:
RQRTAPPS (サービ ス/サーバ名, 実行エンジン番号, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
実行エンジン番号
… 0 でない場合は、該当サービ スに関連したすべての実
行エンジンの内部番号を示す数値。ここで指定する実
行エンジンは、RQRTS 関数で検索したもののいずれ
かでなければなりません(したがって、この関数は、
RQRTS 関数の後で呼び出さなければなりません )
。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
指定したサービ スの実行エンジンでサポートされているアプ リケーションの数。
例:
RQRTAPPS(‘Default Broker’,BA,‘’)
上記では、変数項目 BA に格納されている実行エンジン番号を使用して、その実行エ
ンジンでサポートされているアプ リケーションの数が取り出されます。この実行エ
ンジン番号は、RQRTS 関数で返ったものです。
新機能ガ イド
dbMAGIC Ver.8.2
3.7 新しい関数 3–23
注意事項:
不正なパラメータ値が与えられたときは 、戻り値として 0 が戻ります。
RQRTINF リクエスタの実行エンジンに関する情報 この関数を使用して、実行エンジンを指定し 、その実行エンジンに関する情報を入手できます。
構文:
RQRTINF (サービ ス/サーバ名, 実行エンジン番号)
パラメータ: サービ
ス/サーバ名 … [サービ ス/サーバ ] テーブルに登録されている [サーバ/サー
ビ ス] 名
実行エンジン番号 … 実行エンジンの内部番号を示す数値。ここで指定する実行エ
ンジンは、RQRTS 関数で検索したもののいずれかでなければ
なりません(したがって、この関数は、RQRTS 関数の後で呼
び出さなければなりません )
。
戻り値:
次のような情報がコンマ区切で返ります。
ホスト名
… 実行エンジンが起動されるホストの名前
ポート番号
… 実行エンジンのチェック対象となるポートの番号
IP アドレス
… nnn.nnn.nnn.nnn の形式でアドレスが返ります。
プロセス ID
… ホスト上の実行エンジンのプロセス ID
ステータス
… 値と内容は次の通りです。
・ 1 - 実行可能(アイド ル状態)
・ 2 - 実行可能( 実行中)
・ 3 - 実行不可( 要求処理中)
・ 4 - 実行不可( 開発モード )
・ 5 - 応答なし
・ 6 - 通信障害
アプ リケーション名 … オープンされたアプ リケーション名
例:
RQRTINF(‘Default Broker’,BA,)
上記では 、変数項目 BA に格納されている実行エンジン番号を使用して、その実行
エンジンに関する情報が取り出されます。この実行エンジン番号は、RQRTS 関数で
返ったものです。
注意事項:
サービ ス名や実行エンジン番号が無効の場合、空白の文字列が返ります。
RQRTS リクエスタの実行エンジンの数
MRB の実行エンジンの数を取り出すことができます。
構文:
RQRTS (サービ ス/サーバ名, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
3–24 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
戻り値:
指定したサービ スに登録されている実行エンジンの数。サービ スを指定しなかった
ときには、サービ スブローカに登録されている実行エンジンの合計数が返ります。
例:
RQRTS (‘Default Broker’,‘Secret’)
RQRTTRM 実行エンジンの終了
3
実行エンジンの終了が可能です。同一のリクエスタの実行エンジンをすべて終了させることもでき
ます。
構文:
RQRTTRM (サービ ス/サーバ名, 実行エンジン番号, スーパーバイザパスワード )
ス/サーバ名
パラメータ: サービ
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
実行エンジン番号
… 実行エンジンの内部番号を示す数値。ここで指定する
実行エンジンは、RQRTS 関数で返ったもののいずれ
かでなければなりません。
「 0 」を指定すると、すべて
の実行エンジンが終了します。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
論理値
True
… 処理に成功した場合に返されます。
False … 処理に失敗した場合に返されます。
例:
RQRTTRM(‘Default Broker’,BA,‘Secret’)
上記では、数値型の変数項目 BA に格納されている実行エンジン番号を使用して処理
が行われます。この実行エンジン番号は、RQRTS 関数で返った値です。
注意事項:
サービ ス名や実行エンジン番号が無効な場合、処理に失敗し「 False 」が返ります。また、パスワー
ドがスーパーバイザのパスワード でなかったときにも、処理に失敗します。
RQSTAT リクエスト の状態
特定のリクエストのステータスを取得します。ステータスは数値で返します。
構文:
RQSTAT (サービ ス/サーバ名, リクエスト ID, スーパーバイザパスワード )
パラメータ: サービ スまたはサーバの名前を示す文字列項目または定数。
サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
リクエスト ID
… リモートコールで返ったリクエスト ID 。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
0 … 検出不可
1 … 待機中
2 … 実行中
3 … 完了
4 … 失敗
5 … クリア
新機能ガ イド
dbMAGIC Ver.8.2
3.7 新しい関数 3–25
SETCRSR カーソル形状の指定
カーソル形状を変更します。 SETCRSR はアクションコマンド によって起動されます。
構文:
SETCRSR(番号)
パラメータ: 番号 以下の意味の 1 から 4 の番号を指定します。
1 … 通常の状態で指定します。デフォルト設定は「矢印」になります。
2 … ビジー状態で指定します。デフォルト設定は「砂時計」になります。
3 … カーソル形状は「手」になります。
4 … バックグランド で作業中のとき指定します。デフォルト設定は「矢印付き砂時
計」になります。
3 以外は、Windows のスタート メニューから「設定−コントロールパネル」を選択
し 、マウスアイコンをダブルクリックしマウスプロパティを起動します。そのポイン
タタブで表示された内容で変更できます。
戻り値:
論理値( 真/偽)
注意事項:
Windows 以外のプラットフォームでは常に「 false 」が返ります。また、パラメータが 1 から 4 以外
の値のときにも「 false 」が返ります。
SETPARAM パラメータの設定
グローバルパラメータを設定します。
構文:
SETPARAM (パラメータ名, 値)
パラメータ: パラメータ名
… グローバルパラ メータの名前で 、このパラメータに値が入れられ
ます。
値
戻り値:
… パラメータに入れる値です。
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
SETPARAM(‘P-Employee name’, BA)
上記では、項目 BA の値がパラメータ ‘P-Employee name’ に格納されます。
STRTOKEN ト ークンの取得 取得したいトークンの番号を返します。
構文:
STRTOKEN(元文字列, トークンインデックス, 区切文字列)
パラメータ: 元文字列
… 区切り文字を含んだ文字列。
トークンインデックス … リクエストされたトークン インデックス (数値)。
区切文字列
戻り値:
… 区切文字列を表す文字列。
文字型
… 取得されたトークン。トークンを発見できなかったときには空の文字列を
返します。
3–26 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
注意事項:
■ [ 区切文字列]には、区切文字として複数の文字を指定できます。
■ インデックスが 1 で、区切文字列が空のときまたは見つからなかったときには、元文字列全
体が返されます。
■ 1 より大きいインデックスが指定されているのに、区切文字列が見つからない (区切文字列が
空であったりインデックスが範囲外であったり、あるいは区切文字列が存在しないなど ) とき
には、空の文字列が返されます。
例:
新機能ガ イド
dbMAGIC Ver.8.2
STRTOKEN(BA,2,‘,’)
BA の値が ’abcd,cdef,ghik,lmnp’ のとき’cdef’ が返されます。
3.7 新しい関数 3–27
3
3–28 新しいアクション 、関数と機能
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 4 章 パーティショニング
4.1
4.2
4.3
4.4
MRB(MAGIC リクエストブローカ)
動作環境 : : : : : : : : : : : : : : :
リモート コール : : : : : : : : : : :
関数 : : : : : : : : : : : : : : : : :
4–2
4–6
: 4–8
:4–14
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第4章
パーティショニング
dbMAGIC の「アプ リケーションパーティショニング 」機能により、リモートコンピュータ (サーバ ) 上で
dbMAGIC プログラムを実行することができます。このプ ログラムは 、サーバ上に常駐している dbMAGIC
アプ リケーションによって実行されます。このプログラムは、同期実行と非同期実行のど ちらも可能です。
4.1
MRB(MAGIC リクエストブローカ)
MRBは、dbMAGIC のコンポーネントの 1 つで 、ネットワークから送られてくるリクエストの受信と処理
を担当します。ここでいうリクエストとは、リモートでのプログラム実行に対する呼び出しの意味で、この
リクエストにはパラメータとオプションが格納されています。リクエストは、最終的には dbMAGIC エンジ
ンに送られ 、実行されます。
図 4.1: MAGIC リクエスタブローカ (MRB) のプロセス
MRB の主要機能を以下に列挙します。
■ クライアントから送られたリクエストのキューイング
■ リクエストに対する実行エンジンの割当
■ リクエストのステータスの管理と処理
■ 非同期モード でのプログラムの起動
■ 処理のログ
前提条件
MRB を使用するには、Windows 環境下で WINSOCK 互換 TCP/IP プロトコルが必要です。
インスト ールと設定
MRB を構成するファイルはすべて 、同じデ ィレ クトリ内に存在していなくてはなりません。以下に必要な
ファイルを列挙します。
4–2 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
■ MGRQMRB.EXE … MRB の実行可能ファイルです。MRB は、Windows 95/98 または Windows NT 上
で動作します。
MGRQMRB.EXE は、コマンド ラインまたは、ショートカットから起動できます。
MRB の実行中は、Windows のタスクバーにアイコンが表示されます。
ただし 、WindowsNT に関しては、サービ スとして使用している場合、コマンド ラ
インから MGRQMRB.EXE を実行することはできません。Windows95/98 の場合
は、デフォルトでは OS 起動時に自動的に MRB は起動されません。
■ MGRQGNRC.DLL … このファイルには、サポートライブラリが収められています。
■ MGRB.INI
… 初期化ファイルです。この MGRB.INI ファイルは、MRB の初期化時に読み込ま
れます。なお、MRB のインストール時および 、設定時には、このファイルは必ず
しも必要ではありません。
MGRB.INI ファイルに定義されているキーワード は以下の通りです。
キーワード
内容
[MRB ENV]
BrokerPort
MRB のポート番号を指定します。このポートにリクエストが送られて
きていないか、MRB により常時チェックされます。
構文:BrokerPort = ポート番号(デフォルト:2001 )
EnginesPriority
コンピュータ名の一覧で( 最高で 9 つまで )
、サーバエンジンを割り当
てるために使用し ます。この一覧の順序に基づいてエンジンが選択さ
れ 、クライアントからのリクエストが処理されます。つまり、実行可能
であれば 一覧の最初のコンピュータのエンジンが実行され 、そうでな
ければ 、2 番目のコンピュータのエンジンが実行される、という具合に
なります。
構文:EnginesPriority=[<コンピュータ名1>][,<>]
Server Timeout
タイムアウト( 単位秒)で、非同期コールの実行中、この時間が経過す
るとエンジンから MRB に対して I-AM-ALIVE メッセージが送出され
ます。
この値を 0 にした場合、エンジンから MRB には I-AM-ALIVE メッセー
ジは送られなくなります。そのため、タスクの実行中、エンジンが何
らかの原因でクラッシュしたり異常終了したときでも、エンジンから
I-AM-ALIVE メッセージが送られることがなくなるため、その状態は
MRB には認識不可能になります。
構文:ServerTimeout = n
PasswordSupervisor
オプションで省略できます。このキーワード を使用して、ユーザからの
MRB に対するアクセスを制限できます。
パスワード を指定した場合、MRB の以下の処理でセキュリティチェッ
クが実行されます。
1: 新しいエンジンのロード。
2: MRB またはエンジンの終了。
3: キューにあるリクエストの削除または優先順位の変更。
指定を省略した場合には、MRB の処理ではセキュリティチェックは行
われないため、ユーザ名とパスワード はチェックされません。
新機能ガ イド
dbMAGIC Ver.8.2
4.1 MRB(MAGIC リクエストブローカ) 4–3
4
キーワード
内容
PasswordQuery
オプションで省略できます。このキーワード を使用して、ユーザからの
MRB に対するアクセスを制限できます。
パスワード を指定した場合、あるユーザから別のユーザのリクエスト
の照会が実行されたとき、そのユーザのユーザ名とパスワードがチェッ
クされます。リクエストは提出時に使用されたユーザ名とパスワード
を使用して行なわれるため、自分のリクエストを照会する場合には、制
限はありません。
リクエストの提出時に使用されるユーザ名とパスワード として、
[ 設定
/サービ ス]のユーザ名とパスワード 、dbMAGIC のアプリケーション
のログオンに使用されたユーザ名とパスワード 、MGREQ.INI ファイル
に保存されているユーザ名とパスワード はすべて MRB により受け入れ
られます。
この指定を省略した場合、ユーザ名とパスワード はチェックされ ませ
ん。そのためリクエストは、どのユーザからも照会が可能となり、ユー
ザは別のユーザのリクエストを確認できます。
AutoLoad
使用できるエンジンが見つからない場合に起動するエンジンのエント
リ名と、起動するエンジンの最大数を指定します。最大数に達している
場合、それ以降エンジンは自動的には起動されなくなります。
構文:AutoLoad = エントリ名, エンジンの最大数
Log
ログファイルで 、このファイルにハイレベルの MRB 処理の内容がロ
グされます。ログの内容は、リクエスタと MRB の間でやりとりされた
メッセージ 、MRB とエンジンの間でやりとりされたメッセージです。
構文:LOG = [ファイル指定部]
ファイル名:ファイル名を指定します。ファイル名の途中にはスペース
は挿入できません。
同期:
Y - 行ごとにログファイルが開き、閉じます。このため、ログファイル
は 、コンポーネントが メモリに読み込まれているときでも削除できま
す。
N - ログファイルは、コンポーネントの初期化と処理の終了の際にだけ
開き、閉じます。
モード :
C - 一番簡潔なログが出力されます。
S - dbMAGIC 開発者向けの詳細なログが出力されます。
D - 一番詳細なログが出力されます。
[MRB EXECUTABLES LIST]
オプションのセクションで省略できます。このセクションには、コマン
ド ライン実行ファイルまたはシェルコマンド をリストで記述できます。
ここで記述した実行ファイルまたはシェルコマンド は 、リクエスタか
ら実行することができます。また、MRB の初期化時に起動することも
できます。
構文:エント リ名=<コマンド >[<作業デ ィレ クト リ>],[<ユーザ名
>], [<パスワード >],[<MRB の初期化時に実行される回数>]
4–4 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
キーワード
内容
[MRB REMOTE EXECUTABLES オプションのセクションで省略できます。マルチコンピュータ環境で、
LIST]
各コンピュータでエンジンが MRB とは別個に機能しているときに、こ
のセクションを記述します。
MRB のインスタンスはローダとして機能し ますが 、インスタンスは、
エンジンが機能しているコンピュータすべてに対して有効でなければ
なりません。マルチコンピュータ環境の場合、このセクションに実行可
能ファイルを一覧で指定しておきます。これで、ローカルの MRB から
リモートの MRB に対して自動的に接続が実行されるとともに、このセ
4
クションに指定した実行可能ファイルがロード されます。なお、リモー
ト MRB にパスワードが設定されている場合、PasswordSupervisor を指
定しなければなりません 。指定しない場合、パスワード としてはロー
カルの MRB のパスワードが使用されます。
構文:エントリ名=<リモート MRB のノード 名/ポート番号>,[<リモー
ト MRB の PasswordSupervisor>],< リモート MRB に定義されてい
るエントリ名>],[<MRB の初期化時に実行される回数>]
[MRB ENGINE CLIENTS MAP] オプションのセクションで省略できます。開発者に対して、リクエスト
の受信先のエンジンを制御できます。
例えば 、同一の CTL ファイルに対して複数の開発者で開発を行ってい
る場合、ある開発者が 、オブジェクトをチェックアウトし 、MRB に自
分のエンジンを割り当てるといった作業が可能です。
構文:<エンジンのホスト名>:<クライアントのノード 名>[,<>]
注意:
リモートコールの実行中(このセクションでエンジンがマッピン
グされている場合)、リクエストゲートウェイでは、リクエストで
送られてきたユーザ名とパスワード を使用して処理が行われます。
したがって、開発者がまだエンジンにログオンしていないときに
は 、ログオンの際、ユーザ名とパスワード を指定しなければなり
ません。これで、その開発者が使用できる MCF であるかを確認で
きます。
なお、ユーザ名とパスワード は、インターネットとコマンド ライ
ンでは MGREQ.INI ファイル、dbMAGIC バージョン 8 クライアン
トでは[サービ ス]テーブルにおいて定義できます。
新機能ガ イド
dbMAGIC Ver.8.2
4.1 MRB(MAGIC リクエストブローカ) 4–5
MRB ログファイル
MRB ログは、初期設定ファイルで設定されている[ Log ]パラメータに従って使用されます。このログには、
MRB の操作時に発生したすべてのリクエストなど 、あらゆる動作が記録されます。ログファイル内の各行に
はタイムスタンプが表示されます。
MRB の動作
MRB は、0 から 9 までの優先順位を基に、リクエスト待ち行列を管理します。この場合、0 が最も低い優先
順位です。待ち行列内の各項目には、以下の情報が置かれています。
■ リクエスト ID
■ 優先順位
■ 実行ステータス
■ アプ リケーション名
■ 元のリクエストパケット
■ エラーコード
また、MRB では、実行エンジンの管理機能も搭載されています。管理はリストを使用して行われます。この
リストには、各エンジンについて、以下のような情報が保存されます。
■ アドレス
■ ステータス
■ 現在のアプリケーション
■ 利用可能アプ リケーション
4.2
動作環境
[サービ ステーブル表示]欄が 、
[設定/動作環境]ダ イアログに追加されました。デフォルトの値は、
「 Yes 」
です。
[ 設定]メニュー、ツールバーおよび MAGIN.INI ファイルに[サービ ス]テーブルが追加されました。
[ 設定/サービス]テーブル
[ 設定/サービ ス]テーブルには、以下のパラメータがあります。
設定欄
内容
名前
サービ スを示す名前。この名前は 、テーブルに同じものがあってはいけま
せん。
サーバ
サーバの名前で、
[サーバ ]テーブルに定義されているサーバを指定します。
ズームすると[サーバ一覧]が表示されますので、ここから選択します。
リモートアプ リケーション
dbMAGIC アプリケーションの名前。ズームすると[アプリケーション一覧]
が表示されますので、ここからアプ リケーションを選択します。
4–6 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
4
図 4.2: [ 設定/サービス]テーブル
[サービス特性]ダイアログ
[サービ ス特性]ダ イアログにアクセスするには、
[ 編集/特性]をクリックし 、各サービ スごとにパラメー
タを入力します。
[サービ ス特性]ダ イアログには、以下のパラメータがあります。
図 4.3: [サービス特性]ダイアログ
設定欄
内容
ユーザ名
ユーザの名前を定義し ます。サービ スにリクエストが送られたとき、この
名前を使用してサーバのエンジンにログオンが実行されます。ユーザ名は、
サービ スごとに指定できます。
パスワード
指定したユーザ名に関連するパスワード を定義します。パスワード は、サー
ビ スごとに指定できます。
新機能ガ イド
dbMAGIC Ver.8.2
4.2 動作環境 4–7
4.3
リモートコール
[ リモートコール ]が追加されました。このコールタイプでは、実行するサービ ス、プログラム、引数およ
びパラメータを定義します。コール行からズームすると、
[ リモートコール ]ダ イアログを開き、リモート実
行に必要なパラメータを定義できます。
図 4.4: [リモート コール ]ダイアログ
[ リモートコール ]ダ イアログには、以下の入力欄があります。
設定欄
内容
サービ ス
サービ スの名前で、
[ 設定/サービ ス]テーブルに定義されているサービ ス
のいずれかです。この欄からズームすると[ サービ ス一覧]が表示されま
す。
公開プログラム名
プログラムの公開プログラム名で、このプログラムが実行されます。指定し
たサービ スが同一の CTL を指す場合、この欄からズームすると[ 公開プロ
グラム一覧]が表示されます。
結果ファイル
この欄からズームすると「ファイルを開く」ダ イアログが開きますので、こ
こで結果データを格納するファイルを指定します。結果データはすべて、こ
のファイルに書き込まれます。
戻り値コード
この欄からズームすると[ 項目一覧]が表示されますので 、戻り値コード
を格納する項目を指定します。この項目は、数値型でなければなりません。
この項目には、以下の値が返ります。
0:正常
1:警告
2:エラー
エラーコード
この欄からズームすると[ 項目一覧]が表示されますので 、エラーコード
を格納する項目を指定します。この項目は、数値型でなければなりません。
値として 0 が返された場合は正常です。正の値が戻された場合は、リモート
コールを実施しようとしたときにエラーがあったことを示しています。コー
ド の意味は、
「実行時の動作」に一覧表としてまとめてあります。
4–8 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
設定欄
内容
リクエスト ID
この欄からズームすると[ 項目一覧]が表示されますので、MRB から返さ
れるリクエスト ID 番号を格納する項目を指定します。この項目は、文字型
でなければなりません。
優先順位
この欄からズームすると[ 式]テーブルが表示されますので 、優先順位を
表す式を指定します。
[ リモートコール ]行には、リモートプログラムが終了するまでクライアント側を待たせるかど うかを指定
する[ウェイト ]欄があります。
[ウェイト ]欄が 、他の[コール ]タイプで使用されている[フォーム]欄
の代わりに表示されます。
プログラム引数は、他の[コール ]タイプの場合と同じ方法で渡されます。
実行時の動作
実行時、
[コールリモート ]コマンドが検出されると、実行エンジンによって有効なサーバが検索されます。
その後、リモートコマンドが dbMAGIC のリクエスタに渡されます。ここで 、
[ウェイト ]欄の値が「 Yes 」
の場合、クライアントはいったん待機状態に入り、そのコマンド による処理が完了すると( または、タイム
アウトに達すると )、通常の動作に戻ります。一方、リモートコマンド の[ウェイト ]欄の値が「 No 」の場
合、クライアントの待機は行われません。その後、リモートコマンドが完了すると、リモートコマンド によ
り送られた項目が再計算され 、後続のプログラムフローが再開されます。
[コールリモート ]コマンド の実行時にエラーが発生したときには、エラーコード やエラーメッセージが返
ります。エラーコード とエラーメッセージは以下の通りです。
コード
ニーモニック
4
NO-RESULT
メッセージ
意味
リクエスト先のタスクからリクエスタの
出力メディアに結果が返ってこなかった
ことを示します。
20
101
RT-TERMINATING
リモートコール:実行中に
アプリケーション処理用のエンジンがリ
アプ リケーションサーバが
クエスト実行中に終了した場合、このエ
クローズされました.
ラーが発生します。
リモートコールにてアプリケーションの
BAD-ARGS
指定が間違っているか、プログラム名が
入力されていません。
102
CNCT-REFUSED-
リモートコール:メッセー
MRB で使用され るホスト名またはポー
MRB
ジサーバが見つかりません .
トが不適当な場合、このエラーが発生し
ます。MRB の接続先のポートが適当か
ど うか、接続が正常かど うかを確認して
ください。
103
APP-NOT-FOUND
リモートコール:リモート
アプ リケーションが エンジンによりサ
アプ リケーションが見つか
ポートされていない場合、このエラーが
りません .
発生し ます。また 、MGREQ.INI ファイ
ルの「 Appl= 」キーワード で正し くアプ
リケーションを指定していない場合にも、
このエラーが発生します。
新機能ガ イド
dbMAGIC Ver.8.2
4.3 リモートコール 4–9
4
コード
ニーモニック
104
APP-IN-USE
メッセージ
意味
リモートコール:有効なア
アプリケーション処理用のエンジンがす
プ リケーションサーバでは
べて 、他の リクエスト の処理中で 、使
ありません .
用できるエンジンが ない場合 、このエ
ラーが発生します。また、アプ リケーシ
ョンが エンジンによりサポ ート され て
いない場合にも 、このエラーが 発生し
ます。また、MRB のタイムアウトの値
が 小さい場合にも 、このエラーが 発生
することが あります。タ イムアウト の
値は 、
[ 設定/サーバ ]の「タイムアウ
ト 」欄または、MGREQ.INI ファイルの、
「 BrokerTimeout 」キーワード の値が使用
されます。
105
MRB-NOT-RSPND
リモートコール:ブローカ
サーバエンジンから I-AM-ALIVE メッ
から応答がありません .
セージが送られないまま、MGRB.INI フ
ァイルの「 ServerTimeout 」パラメータの
値( 時間)が経過した場合、このエラー
が発生します。
106
RT-NOT-RSPND
リモートコール:実行エン
サーバエンジンから I-AM-ALIVE メッ
ジンから応答がありません .
セージが 送られ ないまま 、MAGIC.INI
ファイルまたは MGREQ.INI ファイルの
「 ServerTimeout 」キーワード の値(時間)
が経過した場合、このエラーが発生しま
す。
107
110
CNCT-RESET
REQUEST-TIMEOUT
リモートコール:実行中に
アプリケーション処理用のエンジンがリ
リモートエンジンがアボー
クエスト実行中にアボートした場合、こ
トしました.
のエラーが発生します。
リモートコール:タイムア
リ クエ スト され た タ ス クの 処 理が 完
ウトを越えました.
了 し な い 状 態 で 、MAGIC.INI ファ
イ ル ま た は MGREQ.INI ファイ ル の
「 RequestTimeout 」キーワード の値( 時
間)が経過したとき、このエラーが発生
します。
111
RQGNRC-ERR-NOT-
113
MRB
APPNAME-
リモートコール:アプリケー
リクエストのパラメータにアプリケーシ
REQUIRED
ション名が指定されていま
ョン名が指定されていない場合、このエ
せん .
ラーが発生します。
リモートコール:プログラ
リクエストのパラメータにプログラム名
ム名が指定されていません .
が指定されていない場合、このエラーが
114
PRGNAMEREQUIRED
発生します。
4–10 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
コード
ニーモニック
115
RQGNRC-ERR-
リモートコール:応答キュー
REPLYQUEUE-MISSING
がオープンできませんでし
116
RQGNRC-ERR-NOENGINE-READY
130
APP-OPEN-FAIL
メッセージ
意味
た.
リモートコール:アプリケー
サーバエンジンによりアプリケーション
ションをオープンできませ
コントロールファイルのオープンが試行
んでした.
されましたが、その処理に失敗した場合、
このエラーが発生します。
131
PRG-NOT-FOUND
リモートコール:プログラ
指定されたプログラムの公開プログラム
ムが見つかりません .
名がアプ リケーションに見つからなかっ
た場合、このエラーが発生します。
133
ACCESS-DENIED
リモートコール:アクセス
ユーザ名またはパスワードが不適当な場
が拒否されました.
合このエラーが発生します。また、指定
されたユーザにプログラムの実行権利が
ない場合もこのエラーが発生します。
135
136
137
リモートコール:インター
サーバエンジンがインターネットリクエ
ネット処理に対する制限が
スト 用のエンジンでない場合 、このエ
かかっています.
ラーが発生します。
LIMITED-LICENSE-
リモートコール:ライセン
サーバエンジンのリクエストカウントが
CS
ス上の接続可能数を越えま
最大値に達している状態でリクエストが
した.
送られた場合、このエラーが発生します。
エンジンは要求を受け付け
実行モードから開発モード への切り替え
ることが出来ません .
の際にタイミング問題が発生し 、そのた
LIMITED-LICENSEHTTP
REQUEST-REJECT
め、サーバエンジンによる要求の実行が
できなかった場合、このエラーが発生し
ます。
138
146
RT-ERR-MSG
BIND-HOST-NOTFOUND
リモートコール:リモート
サーバエンジンによりプログラムの実行
プログラム実行中のエラー
が試行されましたが 、その処理に失敗し
です.
た場合このエラーが発生します。
リモートコール:接続確定
MGRB.INI ファイルの「 BrokerPort 」キー
に失敗しました−ホスト名
ワード に正し いホ スト 名または 、IP ア
が不明です.
ドレスが指定されていない場合、このエ
ラーが発生します。
147
CNCT-HOST-NOT-
リモートコール:接続に失
FOUND
敗しました−ホスト名が不
明です.
[ 設 定 / サ ー バ ]の[ サ ー バ アド レ
ス]欄または 、MGREQ.INI ファイルの
「 Messaging Server 」キ ーワード または
「 Local Host 」キーワード に正しいホスト
名または、IP アドレスが指定されていな
い場合、このエラーが発生します。
新機能ガ イド
dbMAGIC Ver.8.2
4.3 リモートコール 4–11
4
コード
ニーモニック
メッセージ
意味
150
CNCT-REFUSED-
リモートコール:メッセー
アプ リケーションサーバが ブ ローかと
MRB
ジサーバが見つかりません .
接続できません 。ブ ローカが 起動され
ているのであれば 、ブ ローカのホスト
名や IP アド レ スを確認し てください。
MGREQ.INI の LOG パラメータを有効
にして現象を再現させてみてください。
151
CNCT-RESET-BYREQ
リクエストの実行中にリクエスタとアプ
リケーションサーバの間の接続がリセッ
トされました。この場合、アプリケーショ
ンサーバからリクエスタに何も返されま
せん。クライアントやアプリケーション
サーバのリクエスタをチェックしてみて
ください。MGREQ.INI の LOG パラメー
タを有効にして現象を再現させてみてく
ださい。
160
RQSPAWN-ERR-EXENOT-FOUND
MGRB.INI の [MRB EXECUTABLES
LIST] の実行ファイル名が正しくない場
合、このエラーが発生します。
163
RQSPAWN-ERRBAD-LOGIN
MGRB.INI の [MRB EXECUTABLES
LIST] のユーザ名またはパスワードが正
しくない場合、このエラーが発生します。
164
RQSPAWN-ERR-
MGRB.INI の [MRB EXECUTABLES
PRIVILEGE-NOTHELD
を実行する権利が無い場合、このエラー
LIST] で指定したディレクトリでコマンド
が発生します。
169
RQSPAWN-ERR-NETUNREACHABLE
MGRB.INI の [MRB EXECUTABLES
LIST] で指定したコマンドが渡らなかっ
た場合、このエラーが発生します。
160-169 のエラーコード はコマンド ライ
ンリクエスタによるエラーとしてブロー
カのログファイルに出力されるものです。
[MRB EXECUTABLES LIST] の指定に
よるエンジンの実行が正常に行われなか
った場合に発生します。正しく設定され
ているかど うかを (パス名、ユーザ名、パ
スワード など ) 確認してください。
161
DIRECTORY-NOTFOUND
MGRB.INI の [MRB EXECUTABLES
LIST] のコマンド または作業デ ィレクト
リのパスが正しくない場合、このエラー
が発生します。
4–12 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
コード
ニーモニック
メッセージ
意味
180
EXE ENTRY NOT
起動しようとしたエントリが MGRB.INI
FOUND
の [MRB EXECUTABLES LIST] および
[MRB REMOTE EXCUTASBLES LIST]
に存在しない場合、このエラーが発生し
ます。
187
CNCT REFUSED
MGRB.INI の [MRB EXECUTABLES
REMOTE MRB
LIST] で指定したホストにおいて MRB
が起動していない場合、このエラーが発
生します。
200
FATAL
リ モ ート コ ール:一 般 エ
その他のエラー。
ラー.
コード パーティショニング: TCP/IP サービ スが イン ストールされて
201
202
OPEN-RESULT
TCP/IP が初期化できません
いない場合、このエラーが 発生し ます。
でした.
TCP/IP をインストールしてください。
リモートコール:結果ファ
コールリモートの[結果ファイル]欄で
イルをオープンできません .
指定されたファイルをオープンできない
場合、このエラーが発生します。
205
220
新機能ガ イド
dbMAGIC Ver.8.2
DATA-SRVR
データサーバはメッセージ
[ 設定/サーバ ]の[サーバタイプ ]欄
サーバとしては使用できま
が正しく指定されていない場合、このエ
せん .
ラーが発生します。
OUT-OF-
こ の エ ラー メッセ ージ は Winsock が
RESOURCES
error-10055(Out of Buffer) を返したとき
に出力されます。
4.3 リモートコール 4–13
4
4.4
関数
dbMAGIC バージョン 8 には、アプ リケーションのパーティショニングで使用できる以下の関数が追加され
ました。
図 4.5: 関数一覧 (一部)
GETPARAM パラメータの取得
プログラムにグローバルパラメータとして渡されているパラメータの値を取得します。
構文:
GETPARAM (パラメータ名)
パラメータ: パラメータ名
… グローバルパラメータの名前
戻り値:
データ
… データ型は、
[パラメータ名]で指定したパラメータのデータ型になります。
注意事項:
項目のデータ型がパラメータのデータ型と異なる場合、結果が異常になることがあります。
パラメータ名を指定しなかったときには、NULL が返ります。
dbMAGIC インターネットプログラムでグローバルパラメータとして HTTP 環境変数が渡されたと
きにも、この関数を使用して値を取り出すことができます。
例:
GETPARAM(‘Name’) では、
[コールプログラム]コマンド、
[コールリモート ]コマ
ンドでグローバルとして渡された ‘Name’ パラメータの値が返ります。ハイパーリン
クを介して渡されたときも同じです。
RQEXE リモート アプリケーションを起動します。
MRB が起動しているコンピュータにリクエストを送り、指定された実行可能ファイルをロード す
るように指示します。
4–14 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
構文:
RQEXE (サービ ス/サーバ名, 実行登録名, 引数, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
実行登録名
… MGRB.INI ファイル内の [MRB EXECUTABLES LIST]
または [MRB REMOTE EXECUTABLES LIST] セク
ションに設定された実行ファイルリストを表す文字列。
引数
… ロードする実行ファイルのオプションの引数(例: /Star。
tApplication=5 )
4
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
注意事項:
MRB は、実行可能ファイルを非同期コールでロードします。このため、MRB に対するアクセスが
許可され 、実行可能ファイルが読み込み可能の状態になったときに、戻り値が返ります。
例:
RQEXE (‘Default Broker’,‘Online’,‘/StartApplication=5’,‘Secret’)
RQLOAD リクエスタのロード
サービ スの起動に関する統計情報を提供します。
構文:
RQLOAD (サービ ス/サーバ名, 参照用パスワード )
パラメータ: サービ
ス/サーバ名 … [サービス/サーバ ] テーブルに登録されている [サーバ/サー
ビ ス] 名
参照用パスワード … MRB の参照用パスワード を定義する文字列。(MGRB.INI の
’PasswordQuery’ の指定内容)
戻り値:
情報がコンマで区切られた文字列で返ります。情報の種類と形式は次の通りです。
平均待ち時間
… 小数点以下が 2 桁の浮動小数点数値
リクエストの合計数
… 数値
保留/待ち行列内のリクエスト数 … 数値
処理中のリクエスト数( 実行時) … 数値
例:
実行済みのリクエスト数
… 数値
実行に失敗したリクエスト数
… 数値
RQLOAD(‘Default Broker’,‘Secret’)
注意事項:
サービ ス名が不適当な場合、処理に失敗するとともに空白の文字列が返ります。また、パスワード
がスーパーバイザのパスワード でなかったときには、処理に失敗します。
新機能ガ イド
dbMAGIC Ver.8.2
4.3 リモートコール 4–15
RQQUEDEL リクエスタのキューの削除
サービ スキューのエントリを削除できます。
構文:
RQQUEDEL (サービ ス/サーバ名, リクエスト ID, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
リクエスト ID
… キュー上のエントリを示す文字型の数値
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
RQQUEDEL(‘Default Broker’, BA”)
上記の場合、変数項目 BA のリクエスト ID を使用して、削除が実行されます。
注意事項:
サービ ス名やリクエスト ID が不適当な場合、処理に失敗するとともに「 False 」が返ります。スー
パーバイザパスワードを空白の文字列にしたときには、カレントのユーザに関連するエントリだけが
削除されます。パスワードがスーパーバイザのパスワード でなかったときには、処理に失敗します。
RQQUELST リクエスタのキュー一覧
キューで待機状態にあるエントリの数を取得します。
構文:
RQQUELST (サービ ス/サーバ名, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
指定したサービ スのキューで待機状態にあるエントリの数
例:
RQQUELST(‘Default Broker’ ,‘Secret’)
RQQUEPRI リクエスタのキューの優先順位を変更 キューで待機状態にあるリクエストの優先順位を変更します。
構文:
RQQUEPRI(サービス/サーバ名, リクエスト ID, 新優先順位, スーパーバイザパスワー
ド)
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
リクエスト ID
… キュー上のエントリを示す数値( 0 から 9 )
新優先順位
… 新規( 変更後)の優先順位を示す数値
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
4–16 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
RQQUEPRI(‘Default Broker’, BA, C)
上記では、変数項目のリクエスト ID を使用して処理が行われます。このリクエスト
ID は、
[コールリモート ]コマンド で返った値です。
注意事項:
サービ ス名やリクエスト ID 、新優先順位が不適当な場合、処理に失敗するとともに「 False 」が返
ります。パスワードがスーパーバイザのパスワード でなかったときには、処理に失敗します。
RQREQINF リクエスタのリクエスト 情報
キューまたは MRB の履歴ログから作られるリストによって、リクエスト ID 情報を取得します。こ
の関数を呼ぶ前に、RQQUELST または RQREQLST が呼ばれている必要があります。
構文:
RQREQINF (サービ ス/サーバ名, 登録番号)
パラメータ: サービ
ス/サーバ名 … [サービ ス/サーバ ] テーブルに登録されている [サーバ/サー
ビ ス] 名
登録番号
戻り値:
… キューのエントリを示す数値。
コンマで区切られる、以下の情報が返ります。
リケーション名 … リクエストに関連するアプ リケーションの名前
アプ
プログラム名
… 実行されるプログラムの公開プログラム名
ユーザ名
… アプ リケーションにアクセスを行うユーザの名前
優先順位
… 実行の優先順位
送信ホスト
… リクエストの送り先のホスト
PID
… リクエストを提出したクライアントのプロセス ID
送信時刻
… 要求が送られたときの時刻 (HH:MM:SS)
実行経過時間
… リクエストが実行された秒数
リクエスト ID
… リクエストにつけられたリクエスト ID
ステータス
… リクエストのステータス
・ 1 - 待機
・ 2 - 実行中
・ 3 - 実行完了
・ 4 - 失敗
・ 5 - クリア
例:
リクエスタ戻り値
… 実行時の戻り値
DBMS 戻り値
… 実行時の戻り値(たとえば 、エラー発生の際の戻りコード )
RQREQINF (‘Default Broker’, C)
上記では、変数項目「 C 」に RQREQLST 関数の実行によって取得されたキューの数
をもとにエントリ番号を設定することで、RQREQLST 関数が実行させることができ
ます。
新機能ガ イド
dbMAGIC Ver.8.2
4.3 リモートコール 4–17
4
注意事項:
この関数の前に呼ばれた RQQUELST または RQREQLST でのスーパーバイザパスワードのパラメー
タ設定が空の場合、現在のユーザが提出したリクエストに関する情報のみが返されます。
サービ ス/サーバ名,エントリ番号,スーパーバイザパスワードが不正な場合、何も返されません。
RQREQLST リクエスタのキュー一覧 MRB のログ情報から、リクエスト ID の範囲により指定されるリクエストエントリの数を返します。
構文:
RQREQLST (サービ ス/サーバ名, 最小リクエスト ID, 最大リクエスト ID, スーパーバ
イザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
最小リクエスト ID
… リクエスト ID の最小値。
最大リクエスト ID
… リクエスト ID の最大値。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
指定した範囲に該当するリクエストエントリの数
例:
RQREQLST(‘Default Broker’, BA, BB,‘Secret’)
注意事項:
パスワード を空白の文字列にしたときには、カレントのユーザが提出したリクエストに関する情報
だけが表示されます。サービ ス/サーバ名、最小リクエスト ID 、最大リクエスト ID 、スーパーバイ
ザパスワード のいずれかが不適当だった場合、空白の文字列が返ります。
RQRTAPP リクエスタ対応アプリケーションの情報
MRB に登録された一つまたは複数の実行エンジンがサポートする、ある一つのアプ リケーション
に関する情報を返す。
構文:
RQRTAPP (サービ ス/サーバ名, アプ リケーション番号)
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サーバ/
サービ ス] 名
アプ リケーション番号 … アプリケーションの内部番号を示す数値。ここで指定する
アプ リケーションは、RQRTAPPS 関数で検索したものの
いずれかでなければなりません(したがって、この関数は、
RQRTAPPS 関数の後で使います)。
戻り値:
コンマで区切られた、以下の文字列情報が返ります。
リケーション名 … アプ リケーションの名前。すべてのアプ リケーションを要
アプ
求した場合( RQRTAPPS 関数で、
[実行エンジン番号]パラ
メータを「 0 」にした場合)、次の情報も返ります。
4–18 パーティショニング
ホスト名
… 実行エンジンが起動されるホストの名前
ポート番号
… 実行エンジンのチェック対象となるポートの番号
新機能ガ イド
dbMAGIC Ver.8.2
例:
RQRTAPP(‘Default Broker’, BD)
上記では 、数値型の変数項目 BD に格納されているアプ リケーション番号を使用し
て処理が行われます。このアプ リケーション番号は、RQRTAPPS 関数の実行により
与えられます(アプ リケーション番号は、RQRTAPPS 関数で指定した実行エンジン
番号によって異なってきます)。また、アプ リケーション番号は、RQRTS 関数を実
行したときにも返ります。
RQRTAPPS リクエスタのアプリケーション数 MRB の実行エンジンを指定し 、その実行エンジンでサポートされているアプ リケーションの数を
取り出すことができます。
構文:
RQRTAPPS (サービ ス/サーバ名, 実行エンジン番号, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
実行エンジン番号
… 0 でない場合は、該当サービ スに関連したすべての実
行エンジンの内部番号を示す数値。ここで指定する実
行エンジンは、RQRTS 関数で検索したもののいずれ
かでなければなりません(したがって、この関数は、
RQRTS 関数の後で呼び出さなければなりません )
。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
指定したサービ スの実行エンジンでサポートされているアプ リケーションの数。
例:
RQRTAPPS(‘Default Broker’,BA,‘’)
上記では、変数項目 BA に格納されている実行エンジン番号を使用して、その実行エ
ンジンでサポートされているアプ リケーションの数が取り出されます。この実行エ
ンジン番号は、RQRTS 関数で返ったものです。
注意事項:
不正なパラメータ値が与えられたときは 、戻り値として 0 が戻ります。
RQRTINF リクエスタの実行エンジンに関する情報 この関数を使用して、実行エンジンを指定し 、その実行エンジンに関する情報を入手できます。
構文:
RQRTINF (サービ ス/サーバ名, 実行エンジン番号)
パラメータ: サービ
ス/サーバ名 … [サービ ス/サーバ ] テーブルに登録されている [サーバ/サー
ビ ス] 名
実行エンジン番号 … 実行エンジンの内部番号を示す数値。ここで指定する実行エ
ンジンは、RQRTS 関数で検索したもののいずれかでなければ
なりません(したがって、この関数は、RQRTS 関数の後で呼
び出さなければなりません )
。
新機能ガ イド
dbMAGIC Ver.8.2
4.3 リモートコール 4–19
4
戻り値:
次のような情報がコンマ区切で返ります。
ホスト名
… 実行エンジンが起動されるホストの名前
ポート番号
… 実行エンジンのチェック対象となるポートの番号
IP アドレス
… nnn.nnn.nnn.nnn の形式でアドレスが返ります。
プロセス ID
… ホスト上の実行エンジンのプロセス ID
ステータス
… 値と内容は次の通りです。
・ 1 - 実行可能(アイド ル状態)
・ 2 - 実行可能( 実行中)
・ 3 - 実行不可( 要求処理中)
・ 4 - 実行不可( 開発モード )
・ 5 - 応答なし
・ 6 - 通信障害
アプ リケーション名 … オープンされたアプ リケーション名
例:
RQRTINF(‘Default Broker’,BA,)
上記では 、変数項目 BA に格納されている実行エンジン番号を使用して、その実行
エンジンに関する情報が取り出されます。この実行エンジン番号は、RQRTS 関数で
返ったものです。
注意事項:
サービ ス名や実行エンジン番号が無効の場合、空白の文字列が返ります。
RQRTS リクエスタの実行エンジン数の取得
MRB の実行エンジンの数を取り出すことができます。
構文:
RQRTS (サービ ス/サーバ名, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
指定したサービ スに登録されている実行エンジンの数。サービ スを指定しなかった
ときには、サービ スブローカに登録されている実行エンジンの合計数が返ります。
例:
RQRTS (‘Default Broker’,‘Secret’)
RQRTTRM 実行エンジンの終了
実行エンジンの終了が可能です。同一のリクエスタの実行エンジンをすべて終了させることもでき
ます。
構文:
RQRTTRM (サービ ス/サーバ名, 実行エンジン番号, スーパーバイザパスワード )
パラメータ: サービ
ス/サーバ名
… [サービ ス/サーバ ] テーブルに登録されている [サー
バ/サービ ス] 名
4–20 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
実行エンジン番号
… 実行エンジンの内部番号を示す数値。ここで指定する
実行エンジンは、RQRTS 関数で返ったもののいずれ
かでなければなりません。
「 0 」を指定すると、すべて
の実行エンジンが終了します。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
論理値
… 処理に成功した場合に返されます。
True
4
False … 処理に失敗した場合に返されます。
例:
RQRTTRM(‘Default Broker’,BA,‘Secret’)
上記では、数値型の変数項目 BA に格納されている実行エンジン番号を使用して処理
が行われます。この実行エンジン番号は、RQRTS 関数で返った値です。
注意事項:
サービ ス名や実行エンジン番号が無効な場合、処理に失敗し「 False 」が返ります。また、パスワー
ドがスーパーバイザのパスワード でなかったときにも、処理に失敗します。
RQSTAT リクエスト の状態
特定のリクエストのステータスを取得します。ステータスは数値で返します。
構文:
RQSTAT (サービ ス/サーバ名, リクエスト ID, スーパーバイザパスワード )
パラメータ: サービ スまたはサーバの名前を示す文字列項目または定数。
リクエスト
ID
… リモートコールで返ったリクエスト ID 。
スーパーバイザパスワード … MRB のスーパーバイザパスワードを定義する文字列。
(MGRB.INI の ’PasswordSupervisor’ の指定内容)
戻り値:
0 … 検出不可
1 … 待機中
2 … 実行中
3 … 完了
4 … 失敗
5 … クリア
SETPARAM パラメータの設定 グローバルパラメータを設定します。
構文:
SETPARAM (パラメータ名, 値)
パラメータ: パラメータ名
… グローバルパラ メータの名前で 、このパラメータに値が入れられ
ます。
値
新機能ガ イド
dbMAGIC Ver.8.2
… パラメータに入れる値です。
4.3 リモートコール 4–21
戻り値:
論理値
… 処理に成功した場合に返されます。
True
False … 処理に失敗した場合に返されます。
例:
4–22 パーティショニング
SETPARAM(‘P-Employee name’, BA)
上記では、項目 BA の値がパラメータ ‘P-Employee name’ に格納されます。
新機能ガ イド
dbMAGIC Ver.8.2
4–22 パーティショニング
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第5章
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
HTML フォームエディタ
環境 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–2
HTML フォーム : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–3
HTML フォームのフォーム特性 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–4
HTML フォームと HTML ド キュメント : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–6
ハイパーリンクの設定 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–7
dbMAGIC HTML フォームの環境設定 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5–9
HTML コント ロール : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :5–11
コント ロールの編集方法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :5–13
第5章
HTML フォームエディタ
dbMAGIC バージョン 8 の新機能の 1 つに 、HTML フォームエデ ィタがあります。
dbMAGIC HTML フォームエデ ィタは 、dbMAGIC GUI フォームエデ ィタと様々な点で同じような動作をし
ますが 、HTML に特有な動作をするものもあります。また、HTML 環境に適合させるため、いくつか追加さ
れた機能もあります。GUI フォームエディタと HTML フォームエディタの両方で同様の役割を果たす機能に
ついての説明は、本書では割愛します。
使用する Web ブラウザ固有の設定により、HTML 文書とフォームが開発時の表示と Web ブラウザでの表示
が異なる場合があります。
5.1
環境
新しい設定項目である HTML スタイルファイルが 、図 5.1 に示されているような[動作環境]ダ イアログの
[ 外部参照ファイル ]タブに追加されています。
図 5.1: [ HTML スタイル ]ファイルの設定
[ HTML スタイルファイル ]パラメータからズームして、図 5.2 のような[ HTML スタイル ]テーブルに
アクセスします。
[設定/HTML スタイル ]から直接[ HTML スタイル]テーブルにアクセスすることもでき
ます。
5–2 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
5
図 5.2: [ HTML スタイル ]テーブル
[ HTML スタイル ]テーブルには、以下のパラメータがあります。
名前
■ HTML スタイルを表す名前。
HTML タグ
■ HTML スタイルを構成する、1 つまたは複数の HTML タグ。このタグは 、dbMAGIC によって作成さ
れる HTML タグにマージされます。
■ 例: ’BORDER=0’ 。この HTML タグは、ハイパーリンクオブジェクトを表示するときに境界線を削除
します。
5.2
HTML フォーム
HTML フォームのクラス値は 1 以上でなければなりません。HTML フォームを表示すると、レポートや入出
力ファイルのレ イアウトと同じく、クラス値が同じ HTML フォームが[フォーム]テーブルにすべて表示さ
れます。
HTML フォームは、行を基準に表示されます。このため、フォームエディタに用意されている GUI 機能のう
ち機能しないものもあります。
そのほか、HTML フォームエデ ィタには、次のような注意事項があります。
フォーム表示
HTML フォームエデ ィタでは、フォームは 、できるだけ Web ブラウザの表示に近い形で表示されるように
なっています。ただし 、表示に使われるフォントが変わったり、コントロールの位置が多少ずれるといった
こともあります。フォントやコントロールの位置は、HTML フォームエディタでは完全に再現することはで
きず、また、ユーザが使用しているブラウザによって異なることもあります。
新機能ガ イド
dbMAGIC Ver.8.2
5.2 HTML フォーム 5–3
グリッド と単位
HTML フォームの単位は、常にフォームのフォントを基準とした単位として、ダ イアログに表示されます。
単位に従って、フォームを開発するときに表示されるグ リッド のサイズを決定します。
グリッドは、フォーム上のどの行にコントロールを配置するかを指定するのに使用します。また、書式設定
されたコントロールの場合には、パディングに使用すべきスペースを指定するのに使用します。
コント ロールの配置
フォーム上のコントロールの配置については、次のような制限があります。
■ コントロールの高さが 1 行を超える場合には、そのコントロールが置かれる行はすべて、単一の論理行
として扱われます。単一の論理行に複数のコントロールが配置されている場合、一番高いコントロー
ルの高さが、その論理行の高さとなります。コントロールをフォーム上にド ロップすると、そのコント
ロールの高さに応じて行の上下の境界が表示されます。また、単一の論理行に複数のコントロールが
ある場合、各コントロールは論理行の下端を基準に並べられます。
■ 事前配置された行にコントロールを配置する場合、その行のどこにでも配置することができます。フォー
ムを HTML に変換すると、コントロールに対して自動的に適当な空白が挿入されます。
■ フォームの左上隅にコントロールを置くと、そのコントロールは、左上の行の先頭に配置されます。ま
たは、コントロールによっては、そのコントロール専用の行が作成されます。たとえば 、
[テーブル]、
[ スタティックテーブル]、
[ リッチテキスト ]、
[テキスト ]
( 複数行編集が「 Yes 」の場合)
、
[ラジオボタ
ン]
[ライン ]の各コントロールは、配置すると専用の行が作成されます。論理行に複数のコントロー
ルが置かれている場合、コントロールを置くと、別のコントロールの前または後ろに配置できます。
■ [テーブル]、
[ スタティックテーブル]、
[ イメージ ]および[サウンド ]の各コントロールを除き、他
のコントロールに重ねてコントロールを配置することはできません。ただし 、
[ イメージ ]および[サ
ウンド ]に重ねられるのは[ホットスポット ]のみです。
5.3
HTML フォームのフォーム特性
[ HTML フォーム特性]ダ イアログについて、以下に説明します。
[ 詳細]タブ
フォーム名
■ [フォーム]テーブルの「名前」
■ この名前は、フォームを表示するときにブラウザのタイトルバーに表示されます。
■ 対応する HTML コード :<TITLE>フォーム名</TITLE>
グリッド 表示
■ Yes …
フォームレ イアウトにグリッドが表示されます。
■ No …
フォームレ イアウトでグリッドが表示されません。
5–4 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
ヘッダファイル名
■ この欄では、外部ファイルを指定できます。ここで指定した外部ファイルは、実行時、dbMAGIC によ
り生成された HTML フォームの<HEAD>セクションに追加されます。なお、この外部ファイルを実際
に HTML フォームの<HEAD>セクションに取り込むかど うかは、エンド ユーザが選択します。
■ 必要なヘッダファイルを選択するときには 、
[ヘッダファイル名]パラメータから「ファイルを開く」
ダ イアログにズームできます。
■ ヘッダファイルの名前は、式を評価した結果として入手できます。HTML フォームの変換プロセスに
おいて、作成された HTML フォームの<HEAD>セクションの<Title>タグの後ろに 、外部ファイル
の内容が追加されます。何らかの理由で外部ファイルにアクセスできないときには、変換プロセスで
式の評価が行われません。
[ 入力]タブ
5
パレット 最適化
■ 各種カラーパレットが必要な多くのグラフィックイメージのあるフォームの場合、
「パレット最適化」を「 Yes 」に設定すると、各イメージで最適な色を表現する結合カラーパレットを
作成できます (256 色のイメージの場合のみ)。
■ このパラメータのデフォルトの設定は、
「 No 」です。ただし 、必要な場合に限りデフォルト値を変更す
るようにしてください。
ハイパーリンク
■ フォームを Web サーバに送信するときに 、ど の dbMAGIC プログラムあるいは URL にアクセスすべ
きかを指定するのに、
[ ハイパーリンク]欄から[ ハイパーリンク]ダ イアログにズームします。この
ダ イアログで、dbMAGIC プログラムまたは URL を指定します。
■ 対応する HTML コード :
FORM action="Hyperlink"...>
<
「ハイパーリンク」についての詳細は、この章の「ハイパーリンクの設定」の項を参照してください。
環境設定
■ [環境設定]ダ イアログボックス内のフォームの環境設定を指定するときには、
[環境設定]欄からズー
ムします。
環境設定については、この章の「 dbMAGIC HTML フォームの環境設定」を参照してください。
[ 外観]タブ
色
■ [ 基本色]リポジトリから、フォームの背景色とデフォルトのテキスト色を選択するときには、
[ 基本
色]パラメータからズームします。この欄をズームすると[基本色]一覧が開きます。ここで背景とデ
フォルトのテキストの色を指定できます。
■ 対応する HTML コード :
新機能ガ イド
dbMAGIC Ver.8.2
BODY bgcolor="#xxxxxx" text="#xxxxxx">
<
5.3 HTML フォームのフォーム特性 5–5
背景
■ 現在のフォームの背景イメージとして表示するファイルの名前を選択するときには、
[ 壁紙]パラメー
タからズームします。
■ 対応する HTML コード :<BODY BACKGROUND="Wallpaper">
HTML 内部属性
[式]パラメータから[式]
コントロールタグに追加する型を、
[ HTML スタイル]テーブルから選択します。
テーブルにズームして、
[ HTML スタイル ]型の式を指定することもできます。
[ 位置とサイズ ]タブ
幅
[ 幅]欄では、開発中にフォームを表示するウィンド ウの幅を指定します。
高さ
[ 高さ]欄では、開発中にフォームを表示するウィンド ウの高さを指定します。
5.4
HTML フォームと HTML ドキュメント
「 HTML フォームエディタ」には 2 種類のインタフェースがあります。HTML フォームでは、Web サーバを
通じてコール側アプ リケーションに送信できます。ただし 、HTML ド キュメントにはこのようなオプション
はありません 。HTML フォームと HTML ド キュメントは、同じコントロールパレットとコマンド パレット
を共有します。
図 5.3: HTML ド キュメント とフォームの各タイプ
HTML フォームでは、前バージョンの dbMAGIC と比較して[送信]に関連するパラメータが追加されてい
ます。
5–6 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
5
図 5.4: インターネット 照会 HTML フォーム
5.5
ハイパーリンクの設定
Web サーバにフォームを送信するとき、または[ ハイパーリンク]ダ イアログを使用してハイパーリンクを
クリックしたときに使用する URL を定義することができます。
[ ハイパーリンク]ダ イアログにアクセスするには、
[ HTML フォーム特性]ダ イアログ内の[ 入力]タブ
で[ ハイパーリンク]パラメータからズームするか、
[ HTML コマンド ]パレットの[ ハイパーリンク]コ
マンドボタンをクリックします。
[ハイパーリンク]ダ イアログへは、各種コントロール特性ダ イアログから
もアクセスできます。
図 5.5: ハイパーリンクタイプの選択
ハイパーリンクタイプ
dbMAGIC ハイパーリンクには、以下のタイプが使用できます。
■ dbMAGIC プログラム
■ URL
■ コントロール名
dbMAGIC プログラム
アプ リケーションで別の dbMAGIC プログラムに対してハイパーリンクを設定するときには、
「 dbMAGIC プ
ログラム」を選択します。
フォームを HTML に変換するときには、dbMAGIC が以下の内容を基に URL を作成します。
新機能ガ イド
dbMAGIC Ver.8.2
5.5 ハイパーリンクの設定 5–7
■ インターネットリクエスタのパス。
[ 動作環境]ダ イアログの[パーティショニング ]タブの[ HTTP
リクエスタ]パラメータから取得されます。
■ dbMAGIC のアプ リケーション名と公開プログラム名。ユーザが指定できます。
■ [パラメータ]欄の設定内容。
[ ハイパーリンクタイプ ]欄で「 M=Magic プログラム」を選択すると、以下のハイパーリンクの設定を定義
しなければなりません。
アプリケーション名
■ 起動する dbMAGIC のアプ リケーション名を表します。
■ [アプ リケーション ]一覧からアプ リケーションを選択するときは、この欄でズームし ます。
公開プログラム名
■ コールする必要のあるプログラムの公開プログラム名を表します。これは、
[プログラム]リポジトリ
内で定義されている公開プログラム名と同じです。
■ 選択した dbMAGIC アプ リケーションの[プログラム]一覧からプログラムを選択するときは 、この
欄でズームします。
[プログラム]一覧には、他の dbMAGIC アプ リケーションのプログラムツリー内
のプログラムは表示されません。
パラメータ
■ dbMAGIC プログラムに渡されるパラメータを定義します。
■ [パラメータ]テーブルからパラメータを選択するときには、この[パラメータ]欄からズームします。
出力先フレーム
起動されるプログラムの HTML 出力を返す先のブラウザフレームを定義します。
URL
URL は、有効な URL に対してハイパーリンクを設定するときに選択します。フォームを HTML に変換する
ときには、dbMAGIC がそのとおりに URL をコピーし ます。
[ ハイパーリンクタイプ ]欄で「 U=URL 」を選択すると、以下のハイパーリンクの設定を定義できます。
■ URL
… ハイパーリンクとして使用する必要のある URL 文字列を定義します。この URL は、
1024 バイトまで入力できます。
■式
… 実行時に、戻り値が URL 文字列となる式を定義します。
■ 出力先フレーム … アプリケーションが、起動されるプログラムの HTML 出力を返す先のブラウザフレー
ムを定義します。
コント ロール名
コントロール名は、同じフォームの別のコントロールに対してハイパーリンクを設定するときに選択します。
ハイパーリンクを設定するときには、ブラウザが 、ここで名前が指定されたコントロールからスクロールを
開始し 、位置付けします。
HTML にフォームを変換するときには 、dbMAGIC が ’#’ とその後ろのコントロール名から URL を作成し
ます。
[ハイパーリンクタイプ ]欄で「 C=コントロール名」を選択すると、以下のハイパーリンクの設定を定義で
きます。
現在のフォームに定義されているコントロール名の一覧から、必要なコントロール名を選択するときには、
この欄でズームし ます。
5–8 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
5.6
dbMAGIC HTML フォームの環境設定
HTML フォーム間で移動するときには、アプ リケーション全体を通じて環境設定は保持されます。
GETVAR 関数を使用すると、すでにコールされているプログラム内で指定された環境設定の値を取得します。
「環境設定」は、以下のど ちらかの方法で実行されます。
■ Cookie を使用
■ 非表示フィールド
Cookie
HTML フォームの環境設定は 、HTTP オブジェクトを使用して設定でき、このオブジェクトを Cookie と呼
んでいます。Cookie のデータは 、クライアント(ブラウザ)マシンに特殊なファイルの形式で格納されま
す。保存された Cookie のデータは、ブラウザ上で同じ URL またはサイトに対してアクセスが実行されると、
HTTP 処理と並行して、その URL またはサイトに自動的に送られます。
dbMAGIC は Cookie に対応しており、HTML フォームで Cookie を使った場合、通常と同じく Cookie のデー
タは HTTP 処理の一部として自動的に送られます。また、Cookie が保存された後は、ブラウザ上で Cookie
に定義されている範囲に該当する URL に対してアクセスが実行されると、ブラウザから自動的に Cookie の
データが HTTP 処理の一部として送られます。この Cookie のデータは 、後続の dbMAGIC プログラムで利
用できます。
Cookie を使った場合、環境設定は、インターネットリクエスタによって呼び出される後続のプログラムで有
効です。
なお、ブ ラウザの中には Cookie がサポート されていないものもあります。また 、サポートされていても、
ユーザが無効にしていることもあります。この場合、Cookie による環境設定の内容は無効になります。
非表示フィールド
「環境設定」は、フォームに追加する「非表示」フィールド として指定できます。
INPUT "type=hidden" NAME="MGCONTXTVAR" value...>
"MGCONTXTVAR"は、その非表示フィールド の値です。
<
この指定は、HTML フォームの場合しか利用できません。
非表示フィールド を使用するときには、環境設定を定義したフォームからインターネットリクエスタによっ
て直接コールされたプログラムでしかそれらの設定を利用できません。各プログラムのフォームに適切な環
境設定を行わなくてはなりません。
[ 環境設定]ダイアログ
図 5.6: [ 環境設定]ダイアログ
フォーム特性で[ 入力]タブの[ 環境設定]欄からズームして、
[ 環境設定]ダ イアログにアクセスします。
新機能ガ イド
dbMAGIC Ver.8.2
5.6 dbMAGIC HTML フォームの環境設定 5–9
5
パラメータ
■ このフォームによって設定すべき環境設定の一覧を定義します。
■ [パラメータ]テーブルでパラメータを定義するときには、この欄でズームします。
Cookie を使用:Yes(デフォルト )
■ HTML フォームと HTML ド キュメントフォームの両方から、
[ 環境設定]ダ イアログで「 Cookie を使
用」と「非表示フィールド 使用」のど ちらを使用するか指定します。
■ フォームタイプが HTML フォームのときだけしか「 No 」に変更することはできません。
ド メイン制限
■ 「 Cookie を使用」と指定した時だけ指定できます。
■ ブラウザが Cookie をすべての URL に送信するか 、あるいは現在のフォームと同じド メイン内にある
URL だけに送信するかを指定します。
日付制限
■ 「 Cookie を使用」と指定した時だけ指定できます。
■ Cookie の有功期限を指定します( 年月日を指定します)
。
■ 日付を指定しないと 、ブラウザがセッションの終わりにその Cookie を削除します。
■ 該当する式を選択するときには、このパラメータから[ 式]テーブルにズームします。
時間制限
■ 「 Cookie を使用」と指定した時だけ指定できます。
■ Cookie の有功期限を指定します( 時間を指定します)
。
■ 該当する式を選択するときには、このパラメータから[ 式]テーブルにズームします。
保護チャネル
■ 「 Cookie を使用」と指定した時だけ指定できます。
■ Cookie がサーバに対して保護接続だけを使用して送信すべきかど うかを指定します。
5–10 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
5.7
HTML コントロール
[コント ロール]パレット
「 HTML フォームエデ ィタ」内の[コントロール ]パレットは 、HTML フォームに配置可能な各種コント
ロールを表示します。
5
図 5.7: [ HTML コント ロール ]パレット
[ HTML コントロール ]パレットのボタンについて以下に説明します。
ボタン
説明
[コントロール ]パレットの[ 選択]ツール。このツールはフォーム上でコントロールを選択
したり、フォーム上で最後に選択したコントロールを解除するときに使用します。
[コントロー
ル特性]ダ イアログの移動、サイズ変更、削除やズームするときなどに、このコントロールを
選択する必要があります。
[エディット ]コントロールを配置します。
[エディットコントロール ]の[コントロール特性]
ダ イアログで[データ]欄またはその[ 式]欄でズームすると、
[エディット ]コントロールに
項目または式を指定できます。
[エデ ィットコントロール ]は 、
[データ入力]を不可に設定す
ると、通常のスタティックテキストとして動作します。
対応する HTML コード :<INPUT type="text"...>
スタティックコントロールの[テキスト ]コントロールを配置します。別のプログラムまたは
URL に対するハイパーリンクとして、
[テキスト ]コントロールを使用できます。
開発時に書式設定可能な、
[ リッチテキスト ]コントロールを配置します。
[ リッチテキスト ]コ
ントロールの書式設定はコントロール全体に反映されませんが 、コントロールのテキストの編
集時やテキストの選択時に反映されます。リッチテキストの書式設定は、実行時に HTML 仕様
に従って変換されます。リッチテキストの書式設定では、個別に選択したテキストにそれぞれ
ハイパーリンクを定義することもできます。
新機能ガ イド
dbMAGIC Ver.8.2
5.7 HTML コントロール 5–11
ボタン
説明
ビュー項目または式を指定した[ リッチエデ ィット ]コントロールを配置します。このコント
ロールには、項目や式を格納できます。このコントロールは、テキストが BLOB 型データとし
て得られるときに、
[ リッチテキスト ]コントロールとして動作します。
[ラジオボタン ]を配置します。これらのボタンは、選択項目から特定の値を選択するときに
使用します。
対応する HTML コード :<INPUT type="radio"...>
オン /オフを切り替えることのできる[チェックボックス]を配置します。このコントロールは、
論理項目または論理式を表すときに使用します。
対応する HTML コード :<INPUT type="checkbox"...>
2 つ以上の選択項目のある[ リストボックス]コントロールを配置します。このコントロール
は、一覧から、1 つの値を送信するときに使用します。
対応する HTML コード :
SELECT name="...." size="n">
<OPTION ...>...</SELECT>
<
[コンボボックス]を配置します。
[コンボボックス]は、一覧から1つの値を送信するときに
使用します。
対応する HTML コード :
SELECT name="...." size="1">
<
OPTION ...>...</SELECT>
<
フォームを送信する時やフォームのすべての項目を初期値にリセットするときにクリックする、
プッシュボタンを配置します。
対応する HTML コード :<INPUT type="submit/reset"...>
水平線を配置します。
[ライン ]コントロールは、フォーム内に水平線を表示するときに使用し
ます。
対応する HTML コード :<HR ....>
グラフィックイメージを表示するときに使用する[ イメージ ]コントロールを配置します。
[イ
メージ ]コントロールは、イメージを表示するときや、別のプログラムや URL に対するリンク
を設定するのに使用できます。
対応する HTML コード :<IMG ....>
特定のプログラムや URL にリンクする、イメージ上の四角形領域を定義するのに使用する[ホッ
トスポット (四角形) ]コントロールを配置します。
[ホットスポット (四角形) ]コントロールを
配置できるのは、イメージコントロールの上だけです。
対応する HTML コード :<MAP name= ...><AREA shape=rect...>...</MAP>
特定のプログラムや URL にリンクする、イメージ上の円形領域または楕円形領域を定義するの
に使用する[ホットスポット (円形) ]コントロールを配置します。
[ホットスポット (円形) ]コ
ントロールを配置できるのは、イメージコントロールの上だけです。
対応する HTML コード :<MAP name= ..><AREA shape=circle..>..</MAP>
5–12 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
ボタン
説明
フォームに[テーブル]コントロールを配置します。
[テーブル]コントロール上には、
[エディッ
ト ]コントロールや[プッシュボタン ]コントロールのような他のタイプのコントロールを配
置できます。
[テーブル ]コントロールは、可変数の行を表示するときに使用します。
対応する HTML コード :<TABLE>...</TABLE>
Java アプレットを表示するのに使用する[ Java ]コントロールを配置します。アプレットは、直
接指定することも、また実行時に評価される項目や式を使用して指定することもできます。Java
アプレットのソースファイル名が 、
[ Java ]コントロール上に表示されます。
対応する HTML コード :<APPLET>...</APPLET>
[ ActiveX ]オブジェクトを表示するときに使用する[ ActiveX ]コントロールを配置します。こ
のコントロールは、直接指定することも、また実行時に評価される項目や式を使用して指定す
ることもできます。
[ ActiveX ]オブジェクトのソースファイル名が 、
[ ActiveX ]コントロール上に表示されます。
対応する HTML コード :<OBJECT>...</OBJECT>
コントロールの位置に別の HTML 書式設定ド キュメントを挿入するのに使用する、HTML コ
ントロールを配置します。
ドキュメントは、直接指定することも、また実行時に評価される項目や式を使用して指定する
こともできます。
[ HTML ]オブジェクトのソースファイル名が 、HTML コントロールに表示さ
れます。
[ HTML スタティックテーブル ]コントロールを配置します。
対応する HTML コード :<TABLE>...</TABLE>
サウンド ファイルを指すハイパーリンクを配置します。このコントロールには 、サウンド ファ
イルのソースファイル名が表示されます。
対応する HTML コード :<IMG ...
AREA shape=rect ...
<
usemap=...><MAP name=...>
href=...>
項目パレット
[ HTML フォームエディタ]の項目パレットには、タスクで定義された項目が表示されます( OLE 項目は除
かれます)
。
5.8
コントロールの編集方法
HTML フォームのコントロールは、プルダウン メニュー、ショートカット メニュー、
[ HTML コマンド ]パ
レットを使用して編集できます。
[ HTML コマンド ]パレットのボタンは、その時点の状況によって無効になるものもあります。
[コマンド ]パレット の使用方法
HTML フォームエディタの[コマンド ]パレットには、HTML コントロールの書式設定やフォーム編集用の
コマンド のある、HTML タブが備わっています。
新機能ガ イド
dbMAGIC Ver.8.2
5.8 コントロールの編集方法 5–13
5
図 5.8: [ HTML コマンド ]パレット
[ HTML コマンド ]パレット内の新しい機能コマンドボタンについて、以下に説明します。
ボタン
名前
説明
HTML コード
強調
選択したコントロール (複数選択可能) に強調 (属性) を
<
B>...
<
/B>
I>...
<
設定します。
斜体
選択したコントロール (複数選択可能) にイタリック属
<
/I>
性を設定します。
事前配置
背景
選択したコントロール (複数選択可能) を含む行のコン
<
トロールに事前配置属性を設定します。
<
フォームの編集時に背景を表示しません。
<
PRE>...
/PRE>
...BACKGROUND="..."
...>
フォント
選択したコントロール (複数選択可能) に設定可能な
<
フォント一覧を 、
[フォント ]テーブルから表示し ま
す。選択したフォントにより異なります。
/FONT> <B>
</B> <I> </I>
ハイパーリン
[ リッチテキスト ]コントロール内で選択したコント
<
ク
ロールまたは選択したテキストからのハイパーリンク
href="...">...
</A>
を定義します。
デフォルト
選択したコントロール (複数選択可能) を含む行の見出
HTML フォン
し スタイルをデフォルトの[ブラウザ]フォントに設
ト
定します。
ヘッダ 1
選択したコントロール (複数選択可能) を含む行の見出
FONT SIZE=n>
<
A
H1>...
<
H2>...
<
H3>...
<
H4>...
<
H5>...
<
H6>...
<
<
/H1>
し スタイルをレベル 1 に設定します。
ヘッダ 2
選択したコントロール (複数選択可能) を含む行の見出
<
/H2>
し スタイルをレベル 2 に設定します。
ヘッダ 3
選択したコントロール (複数選択可能) を含む行の見出
<
/H3>
し スタイルをレベル 3 に設定します。
ヘッダ 4
選択したコントロール (複数選択可能) を含む行の見出
<
/H4>
し スタイルをレベル 4 に設定します。
ヘッダ 5
選択したコントロール (複数選択可能) を含む行の見出
<
/H5>
し スタイルをレベル 5 に設定します。
ヘッダ 6
選択したコントロール (複数選択可能) を含む行の見出
<
/H6>
し スタイルをレベル 6 に設定します。
5–14 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
ボタン
名前
左揃え
中央揃え
説明
HTML コード
選択したすべてのコントロールを左に揃えます。デフォ
<
ルトのオプション。
ALIGN="LEFT">...
</DIV>
選択したすべてのコントロールを中央に揃えます。
<
DIV
CENTER>...
/CENTER>
<
右揃え
選択したすべてのコントロールを右に揃えます。
DIV
ALIGN="RIGHT">...
<
/DIV>
<
インデント
選択したコントロールの行にインデントを設定します。
UL>...</UL>
<
多重インデントを利用できます。インデントは、
[動作
環境]ダ イアログの[動作設定]タブで[ インデント
文字]パラメータに 0 以外の値が設定されているとき
だけ有効です。また、
[ホットスポット ]以外のすべて
の HTML コントロールで有効です。
インデント解
選択したコントロールの行からインデントを 1 つ解除
除
します。
[ インデント解除]は、
[ 動作環境]ダ イアロ
グの[ 動作設定]タブで[ インデント文字]パラメー
タ内に 0 以外の値が指定されているときだけ有効です。
また、
[ホットスポット ]以外のすべての HTML コン
トロールで有効です。
段落番号
選択した行 (複数選択可能) の段落番号を設定します。
このコマンド は 、
[テキスト ]コントロールでのみ有
OL><LI>...
</LI>...</OL>
<
効です。
箇条書き
選択したコントロールの行 (複数選択可能) の箇条書き
<
の書式を設定します。このコマンドは、
[テキスト ]コ
<
UL><LI>...
/LI>...</UL>
ントロールでのみ有効です。
HTML ファイ
HTML ファイルとしてフォームをファイルに保存しま
ル書込
す。フォームを開いてから最初に選択したときには 、
[ファイル名を付けて保存]ダ イアログが開きます。そ
れ以降は、フォームを閉じるまでこのダ イアログは開
かず、最初に指定したファイルに上書きされます。
ブラウザで表
フォームを Web ブラウザに読み込んで、表示します。
示
新機能ガ イド
dbMAGIC Ver.8.2
5.8 コントロールの編集方法 5–15
5
HTML[スタティックテーブル]コマンド パレット の使用法
図 5.9: [スタティックテーブル ]パレット
「 HTML フォームエディタ」では、コントロールに重ねて配置しようとすると自動的にコントロールをシフ
トさせます。ただし 、
[ スタティックテーブル ]コントロールの場合には、シフトせずにコントロールを正確
に配置することができます。
[ スタティックテーブル ]のセルと行は簡単に修正できます。
[ スタティックテーブル ]コマンド パレットには、スタティックテーブルの HTML 書式設定用のコマンドが
あります。
以下に、
[ スタティックテーブル ]コマンド パレットのボタンについて説明します。
ボタン
名前
説明
セル特性
スタティックテーブルのセルの[コントロール ]特性を設定します。
行特性
スタティックテーブルの行の[コントロール ]特性を設定します。
テーブル特性
スタティックテーブルの[コントロール ]特性を設定します。
セル間隔の拡張
選択したテーブル内のすべてのセル間隔を広げます。セル間隔を数値で指定
するときには、
[コントロール特性]の[セル間隔]欄で設定してください。
境界幅拡張
スタティックテーブルの境界線の幅を広げます。
セル幅の拡張
選択したセルの幅を 2 倍に広げます。
セル幅の縮小
選択したセルの幅を半分に狭めます。このコマンド は 、選択したセルのサイ
ズを広げたときしか使用できません。
セルの選択
スタティックテーブル内のセルを選択します。
行の選択
スタティックテーブル内の行を選択します。
テーブルの選択
スタティックテーブル全体を選択します。
セル間隔縮小
テーブル内のセルの間隔を減らします。これは、セル間隔の拡張コマンド を
使用してセルの間隔を増やしたときしか使用できません。
境界幅縮小
スタティックテーブルの境界線の幅を狭めます。
セル高さの拡張
選択したセルの縦のサイズを 2 倍に広げます。
セル高さの縮小
選択した行の縦のサイズを狭めます。このコマンド は 、選択したセルを縦に
広げたときしか使用できません。
セルの追加
5–16 HTML フォームエデ ィタ
スタティックテーブル内の現在の行にセルを追加します。
新機能ガ イド
dbMAGIC Ver.8.2
ボタン
名前
説明
行の追加
スタティックテーブル内に行を追加します。
列の追加
スタティックテーブル内に列を追加します。
パデ ィング拡張
セルの境界とそのセルに置かれているコントロールとの間隔を広げます。
境界無し
スタティックテーブルの境界線を削除します。
固定幅セル
セルの大きさを指定します。
セルの削除
スタティックテーブルからセルを削除します。
行の削除
スタティックテーブルから行を削除します。
テーブルの削除
スタティックテーブル全体を削除します。
パデ ィング縮小
セルの境界とそのセルに置かれているコントロールとの間隔を狭めます。
5
フォント と HTML コント ロール
コントロールのフォント特性に関する[フォント ]テーブル内のフォントは、どれでも利用できます。ただ
し 、選択したフォントは「フォームエディタ」に表示されますが 、ブラウザに実際に表示されるフォントに
は以下のように変換される点に留意してください。
HTML 出力に関するフォント 規則
■ ブラウザに実際に表示されるフォントは、ブラウザの設定により異なります。ただし 、サイズ、強調お
よび イタリックなどのフォントスタイルは同じです。
■ [フォント]テーブルの 50 から 77 番のフォントを使用するときには、フォントの型が、<Hn>および <I>
の HTML 各書式設定タグに変換されます。例えば 、テキストコントロールのフォントが 72 番 (ヘッダ 1 、
強調、イタリック) を設定すると、そのコントロールは、<H1><B><I> テキスト </I></B></H1>
として HTML に変換されます。
■ フォントの 7 番を使用すると、コントロールが「整形済みテキスト」HTML であるとみなされ、<PRE>...</PRE>
タグを使用して変換が行われます。
■ それ以外のフォントを設定すると、フォントの型が、<FONT size=n> 、<B>および <I>の各 HTML
書式設定タグに変換されます。この場合の size は、使用するフォントのサイズを表します。
フォント 書式設定コマンド
強調、イタリック、フォント、デフォルト、見出しおよび「整形済みテキスト 」などといった書式設定コマ
ンドを[コマンド ]パレットから選択すると、選択したコントロールのフォントが変わります。例えば 、
[テ
キスト ]コントロールのフォントが 50 番 (HTML デフォルト ) のときに[ 強調]と[ 見出し ]のコマンド を
選択すると、そのフォントが 60 番に変わります (ヘッダ 3 強調)。
HTML コント ロールの[コント ロール特性]ダイアログ
[コントロール特性]ダ イアログを開くには、フォーム上の該当するコントロールからズームします。各コ
ントロールにそれぞれ固有の特性を定義できます。
新しく追加および変更された HTML コントロールのコントロール特性について、以下に説明します。
新機能ガ イド
dbMAGIC Ver.8.2
5.8 コントロールの編集方法 5–17
[ 詳細]タブ
■ コント ロール名
・ ローカルハイパーリンクの設定先を定義するのに使用します。
・ ハイパーリンクとしてコントロール名を使用すると、ブラウザがそのページをスクロールし 、こ
のコントロールから表示を開始します。
・ 対応する HTML コード :
A name=controlname>...</A>
<
■ リッチテキスト フォーマット の使用
・ スタティック (テキスト ) コントロールに適用されます。
・ このコントロールをテキストコントロールとして使用するかリッチテキストコントロールとして
使用するかを指定します。
■ ラベル
・ チョイスコントロール (ラジオボタン 、コンボボックス、リストボックス) に適用されます。
・ コントロール内の各オプションごとに表示されるラベルを指定します。
・ このラベルは、特定のオプションを選択したときに 、フォームから送信される値です。
■ ラベル書式
・ プッシュボタンに適用されます。
・ ボタン上に表示されるラベルとテキスト書式を指定します。
・ ボタン上に表示されるラベルを指定します。これはフォームから送信される値でもあります。
■ クリア
・ 対応する HTML コード :<INPUT type=submit ...> または <INPUT type=reset ...>
■ デフォルト イメージファイル名
・ [ イメージ ]および[サウンド ]の各コントロールに適用されます。
・ コントロールに表示するイメージファイルの名前を定義します。
・ コントロール特性のデータ欄を指定すると、値が無効になります。
・「ファイルを開く」ダ イアログからイメージファイルを選択するときに 、この欄でズームします。
・ 対応する HTML コード :<IMG src=...>
■ 代替テキスト
・ [ イメージ ]、
[サウンド ]および[ Java ]の各コントロールに適用されます。
・ ブラウザがコントロールの内容を表示できない場合に、そのコントロールの代わりに表示するテ
キストを定義します。
・ 対応する HTML コード :<...
alt=...>
■ サウンド ファイル名
・ サウンド ファイルを指すハイパーリンクを配置します。
・ このコントロールには、サウンド ファイルのソースファイル名が表示されます。
・「ファイルを開く」ダ イアログからサウンド ファイルを選択するときに 、この欄でズームします。
・ 対応する HTML コード :<IMG ...
...
usemap=...><MAP name=...><AREA shape=rect
href=...>
■ Java ファイル名
・ [ Java ]コントロールに適用されます。
・ 使用する Java[ クラス]ファイルの名前を定義します。
・ 「ファイルを開く」ダ イアログから Java[ クラス]ファイルを選択するときに 、このパラメータ
でズームします。
・ 対応する HTML コード :<APPLET code=...>
5–18 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
■ パラメータ
・ [ Java ]コントロールと[ ActiveX ]コントロールに適用されます。
・ [ Java Applet ]/[ ActiveX ]コントロールに引き数として渡される、項目または式を定義します。
・ [ パラメータ]テーブルからパラメータを指定するときに 、この欄でズームし ます。
[ パラメー
タ]テーブルには[ パラメータ名]があります。この名前は 、 <PARAM>タグの name の値とし
て指定されます。
・ 対応する HTML コード :
PARAM name=...value=...>
<
■ ActiveX ファイル名
・ [ ActiveX ]コントロールに適用されます。
・ 使用する ActiveX ファイルの名前を定義します。
・「ファイルを開く」ダ イアログから ActiveX ファイルを選択するときに、この欄でズームします。
・ 対応する HTML コード :<OBJECT code=...>
■ [ ActiveX ]クラス
・ [ ActiveX ]コントロールに適用されます。
・ [ ActiveX ]コントロールのクラスを定義します。
・ [ ActiveX ]クラス一覧から[ ActiveX ]クラスを選択するときに 、この欄でズームします。
・ 対応する HTML コード :<OBJECT classid=CLSID...>
■ HTML ファイル名
・ HTML コントロールに適用されます。
・ コントロールの位置に挿入する.htm ファイルまたは .html ファイルの名前を定義します。
・ 「ファイルを開く」ダ イアログから、HTML ファイルを選択するときに 、このパラメータでズー
ムします。
[ 入力]タブ
■ データ入力
・ エディットコントロールに適用されます。
・ HTML への変換時に、HTML 編集フィールド の <INPUT type=text...> whose value を
フォームといっしょに送信するときにコントロールを送信するか、否かを指定します。プレーン
HTML テキスト (オプションの書式設定付き) としてコントロールを送信するかを指定します。
■ 複数行編集
・ エディットコントロールに適用されます。
・ HTML への変換時に 、このコントロールを HTML 複数行編集フィールド として変換するかど う
かを指定します。
・ 対応する HTML コード :<TEXTAREA...>...</TEXTAREA>
■ パスワード 編集
・ エディットコントロールに適用されます。
・ HTML への変換時に 、ユーザに入力データが表示されない HTML パスワード フィールド として
変換するかど うかを指定します。
・ 対応する HTML コード :<INPUT type=password...>
新機能ガ イド
dbMAGIC Ver.8.2
5.8 コントロールの編集方法 5–19
5
■ ハイパーリンク
・ 次のコントロールに適用されます: [エデ ィットコントロール (データ入力不可) ]、
[テキスト ]、
[ イメージ ]、
[ホットスポット (四角形) ]および[ホットスポット (丸) ]
。
・ コントロールをクリックしたときに呼び出される URL を指定します。
・ ハイパーリンクが定義された[テキスト ]コントロールにはアンダーラインが引かれます。
・ 対応する HTML コード :<A href=...>または <AREA href=...>(ホットスポットの場合)
■ 非表示項目
・ エディットコントロールに適用されます。
・ HTML への変換時に、ユーザには表示されずに送信される非表示フィールドかど うかを指定しま
す。非表示フォームとして指定すると、ユーザの介在がなくてもデータを送信できます。
・ 対応する HTML コード :<INPUT type=hidden ...>
■ ボタンタイプ
・ プッシュボタンに適用されます。
・ そのボタンを押したときにフォームが実行するアクションを指定します。
・ 有効な値:
■ S=送信 … フォームが送信されます。
■ C=取消 … フォームの値がすべてクリア( リセット )され 、フォームが最初表示されたとき
の状態に戻ります。
[ 外観]タブ
■ フォント
・ コントロール内に表示されるテキストのフォントを定義します。
・ この欄に値を入力しないと、コントロールが[フォント ]テーブル内の HTML デフォルトとして
定義されているフォントを使用します。
・ ブラウザ内のフォームを表示するのに使用されるフォントは、
「フォームエディタ」で使用される
フォントとは別のフォントであるという点に注意してください。
・ 対応する HTML コード :<Hn> 、<B> 、<I> 、<FONT>などの組み合わせで使用します。
■ 色
・ コントロールに表示されるテキストの色を定義します。
・ この欄に値を入力しないと 、コントロールがはフォーム特性で指定した色を使用します。
■ 可視
・ 式を使用して、コントロールを表示するかしないかを指定できます。
■ 段落整列
・ フォーム内のコントロールの行の整列を定義します。
・ 選択したコントロールの行内のコントロールすべてが同様に整列します。
・ 有効な値: 左寄せ、右寄せ、センタリング
■ インデントレベル
・ フォーム内のコントロールの行のインデントレベルを定義します。
・ 選択したコントロールの行内のコントロールすべてが同様にインデントされます。
・ 対応する HTML コード :<UL>...</UL>
5–20 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
■ テキスト タイプ
・ 選択したコントロールの行に、箇条書きを付けるかまたはその前に番号を付けるかを指定します。
選択したコントロールの行内のコントロールのすべてが同様にインデントされます。
・ 有効な値: なし 、箇条書き、段落番号。
・ 対応する HTML コード :
段落番号<OL><LI>...
<
箇条書き<UL><LI>...
<
/LI>...
<
/LI>...
<
/OL>
/UL>
■ 線幅
・ ラインコントロールに適用されます。
・ ラインの縦方向のサイズをピクセル単位で定義します。
・ 対応する HTML コード :<HR size=n ...>
5
■ テキスト の整列
・ [ イメージ ]、
[ Java ]および[ ActiveX ]の各コントロールに適用されます。
・ コントロールの直後のテキストの整列を指定します。
・ 有効な値: 上寄せ、センタリング、下寄せ、左寄せ、右寄せ
・ 対応する HTML コード :<...
align...>
■ 水平方向の余白
・ [ イメージ ]、
[ Java ]および[ ActiveX ]の各コントロールに適用されます。
・ コントロールの左右に水平間隔を定義します。
・ 値は、ピクセル単位で指定します。
・ 対応する HTML コード :<...
hspace=...>
■ 垂直方向の余白
・ [ イメージ ]、
[ Java ]および[ ActiveX ]の各コントロールに適用されます。
・ コントロールの上下垂直間隔をに定義します。
・ 値は、ピクセル単位で指定します。
・ 対応する HTML コード :<...
vspace=...>
■ HTML 内部属性
・[コントロール]タグに追加する属性を、
[ HTML スタイル]テーブルから選択します。
[式]テー
ブルから、選択する属性を定義式で指定することもできます。
・ [ HTML スタイル ]テーブルで属性を定義し 、すべてのコントロールの HTML 内部属性でこれ
を指定すると、コントロール上の各種要素を標準化できます。
・ [ HTML スタイル ]テーブルから特定のスタイルを選択するときにズームします。詳細について
は、この章の[ HTML スタイル ]テーブルの説明を参照してください。
■ HTML 外部属性
・ [ コントロール ]タグの外部に追加する属性を 、
[ HTML スタイル ]テーブルから選択し ます。
[式]テーブルから、選択する属性を指定する式を作成することもできます。
・ [ HTML スタイル ]テーブルで属性を定義し 、すべてのコントロールの HTML 外部属性特性で
これを指定すると、フォーム上の各種要素を標準化できます。
・ [ HTML スタイル ]テーブルから特定のスタイルを選択するときにズームします。詳細について
は、この章の[ HTML スタイル ]テーブルの説明を参照してください。
新機能ガ イド
dbMAGIC Ver.8.2
5.8 コントロールの編集方法 5–21
■ 境界の表示
・ [ イメージ ]コントロールに適用されます。
・[ イメージ ]コントロールの境界線の幅を定義します。開発者は、境界線の幅の寸法を 1 から 100
の間の値で送信できます。あるいは[ 式]欄から[ 式]テーブルにズームして、境界値を定義す
る式を定義することもできます。
・ デフォルトの値は、0 です。
・ 境界線の幅の値は、作成された HTML ファイル内の[ border ]タグに使用されます。
・ この欄を使用してイメージコントロールの境界線の太さを定義し 、そのイメージコントロールを
別のフォームにコピーしたときでも、指定した境界線の太さは維持されます。ただし 、イメージ
コントロールのコピー先がテンプレートの場合、定義されている境界線の太さより、そのテンプ
レートの書式が優先されます。
・ テンプレートの場合、イメージコントロールの境界線の太さは 、IMG BORDER VAL and IMG
BORDER EXP キーワード を使用して指定できます。
[ 位置とサイズ ]タブ
■ 幅( % )
・ [ライン ]コントロールに適用されます。
・ フォームを表示するウィンド ウの高さの割合 (%) として 、線の横方向の相対的サイズを指定し
ます。
・ 値が 0 の場合には、コントロール特性の[ 幅]欄の値が使われます。
■ 幅
・ [エデ ィット ]コントロールと[テーブル ]コントロールに適用されます。
・ コントロールの横方向のサイズを定義します。
■ 高さ
・ [エディット ]、
[テーブル]、
[ リストボックス]
、
[ イメージ ]、
[ Java ]および[ ActiveX ]の各コ
ントロールに適用されます。
・ コントロールの縦方向のサイズを定義します。
HTML[スタティックテーブル]の[コント ロール特性]ダイアログ
[スタティックテーブル]の[コントロール特性]ダ イアログにアクセスするときには、セル、行またはテー
ブルそのものからズームします。セル、行またはスタティックテーブル全体などといったテーブルの各種部
品に対して、異なる特性を定義できます。
以下に、
「 スタティックテーブルコントロール特性」について説明します。
■ 水平整列 (行とセル )
…
スタティックテーブルセル内のテキストの配置を指定するときに、
[水
平整列]パラメータから値を選択します (左寄せ、センタリングまたは
右寄せ)。
■ 垂直整列 (行とセル )
…
スタティックテーブルセル内のテキストの配置を指定するときには、
[垂
直整列]パラメータから値を選択します (上寄せ、センタリングまたは
下寄せ)。
■ 段落整列 (テーブル )
…
スタティックテーブルの水平整列を指定するときには、
[ 段落整列]パ
ラメータから値を選択します (左寄せ、センタリングまたは右寄せ)。
5–22 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
■ 行数(テーブル )
… スタティックテーブルコントロールの行数を指定するときには、
[行数]
パラメータから値を設定します。行数は、1-100 の範囲の値でなくては
なりません。
■ 列数(テーブル )
… スタティックテーブルコントロールの列数を指定するときには、
[列数]
パラメータから値を設定します。列数は、1-100 の範囲の値でなくては
なりません。
■ 列の間隔 (セル )
…
選択したセルの幅を 2 倍にします。
■ 境界の表示 (テーブル )
…
スタティックテーブル内の境界線の幅を定義します。
■ セル間隔 (テーブル )
…
セル内の間隔を定義します。
■ セルのパディング (テーブル ) …
セルの境界と 、そのセル内のコントロールとの間のスペースを定義し
ます。
5
■ 行の間隔(セル )
… セルの高さを 2 倍にするときには、2 の値を選択します。
■ 固定幅 (セル)
…
スタティックテーブルのセルの幅を固定にするかを指定します。
■ 幅 (セル )
…
スタティックテーブルのセルのデフォルトの幅の値を指定します。
[幅]
パラメータは、
[固定幅]パラメータを「 Yes 」に設定したときだけ有効
となります。
■ 色(テーブル )
… [基本色]テーブルから背景色を選択するときには、
[ 色]欄からズー
ムします。
■ 可視(テーブル )
… コントロールをユーザに対して表示するかど うかを式で指定します。
■ 背景(テーブル )
… 現在のフォームの背景イメージとして表示するファイルの名前を選択す
るときには、
[ 背景]欄からズームします。
■ HTML 内部属性(テーブル )… コントロールタグに追加する属性を、
[ HTML スタイル]テーブルから
選択します。
■ HTML 外部属性(テーブル )… コントロールタグの外部に追加する属性を、
[ HTML スタイル ]テーブ
ルから選択します。
新機能ガ イド
dbMAGIC Ver.8.2
5.8 コントロールの編集方法 5–23
5–24 HTML フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
第6章
HTML フレームセット 形式フォームエ
ディタ
章目次
6.1 フレームセット の階層構造 : : : : : : : : : : :
6.2 [ HTML フレームセット ]の[フォーム]特性
6.3 HTML フレームセット のフォーム編集 : : : : :
6–2
6–2
: 6–4
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第6章
HTML フレームセット形式フォームエデ
ィタ
HTML フレームセット形式を利用することで、インターネットドキュメントにフレームを作成することがで
きます。フレームとは、ブラウザのウィンド ウの中の子ウィンド ウのことをいいます。各フレームにはそれ
ぞれ 、別個の HTML ページが表示されます。表示される HTML ページは別々のファイルで、格納場所も異
なります。
フレームセットとは、複数のフレームの集合をいい、dbMAGIC には多種類のフレームセットがあらかじめ
用意されています。フレームセットは URL で識別され 、また、各フレームはそれぞれ名前で識別されます。
各フレームの内容は、フレームセットに定義されている URL を使用して読み込まれます。フレームには、ハ
イパーリンクでリンクされているフレームの内容や送信ボタンで送られたフレームの内容が表示されます。
このように、フレームセットを使うことで、操作メニューや会社のロゴなど 、アプリケーションの各部のペー
ジを同じページに表示できます。したがって、別々のページを繰り返し読み込むといった処理は不要になり
ます。
HTML フレームセットは、その性質上、階層構造になっています。つまり、フレームセットの中に別のフレー
ムセットを置くことができます。その場合、フレームから同じフレームセットの中のフレームに移動するこ
ともできますし 、フレームに URL を定義し 、その URL のフレームセットにジャンプこともできます。
HTML フレームセットは、
[フォーム]テーブルで、クラス1以上として定義します。
6.1
フレームセットの階層構造
「フレームセット形式フォームエディタ」は、複数のフレームを、ネストした四角形のコントロールセット
として取り扱います。フォーム全体が 、メインフレームとしてフレームセット階層構造の最上位レベルに配
置されます。フレームの各領域が 、格納フレームの子となり、フレームセット階層構造内では格納フレーム
の下に配置されます。
フレームセット階層構造は、フレームセット全体を眺めたときに、必ずしも目に見えるわけではありません。
[フレームセットの表示]コマンド は 、ど のフレームが選択したフレームの格納フレームであるかを指摘す
るので、フレームセット階層構造を確認できます。
フレームセット内のフレームの階層構造を理解しておくことは、大変重要です。これらの複数のフレームの
格納フレームを参照すると、複数のフレームの内容や構造を変更できるからです。
6.2
[HTML フレームセット]の[フォーム]特性
図 6.1: [ HTML フレームセット ]の[フォーム]特性ダイアログ
6–2 HTML フレームセット形式フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
[ 詳細]タブ
フォーム名
■ [フォーム]テーブル内の名前。
■ この名前は、フォームを表示するときに 、ブラウザのタイトルバーに表示されます。
■ 対応する HTML コード :<TITLE>Form Name</TITLE>
境界線の表示:Yes(デフォルト )
■ そのフレームにフレームの境界を表示するかど うかを指定します。
■ 「 No 」を選択すると、フレームセット内のすべてのフレームがブラウザに境界線なしで表示されます。
■ 対応する HTML コード :<FRAMESET frameborder=0/1...>
フレームセット の間隔:1(デフォルト )
■ フレームとフレームの境界の幅をピクセル単位で指定します。
■ この欄は、
「境界表示」を「 No 」に設定しても無効にはなりません。
■ 対応する HTML コード :<FRAMESET framespacing=n...>
相対サイズ:Yes(デフォルト )
■ Yes
… フレームセット内のすべてのフレームのサイズを、ブラウザウィンドウ (またはコンテナフレー
ム) のサイズの割合 (%) として指定します。ブラウザウィンド ウのサイズを変更すると、それ
に伴ってすべてのフレームのサイズが変わります。
■ No
…
フレームのすべてのサイズをピクセル単位で指定します。このような場合、ブラウザウィン
ド ウのサイズを変更しても、フレームのサイズは変わりません。
■ 対応する HTML コード :
相対サイズ=Yes の場合
FRAMESET ...
<
rows/cols="nn%,nn%,...,*">
または相対サイズ =No の場合
FRAMESET ...
<
rows/cols="nn,nn,...,*">
[ 入力]タブ
環境設定
■ [ 環境設定]欄から[ 環境設定]ダ イアログにズームして、そのフォームに適切な環境設定を指定し
ます。環境設定についての詳細は、「 5.6 dbMAGIC HTML フォームの環境設定」を参照してくだ
さい。
新機能ガ イド
dbMAGIC Ver.8.2
6.2 [ HTML フレームセット ]の[フォーム]特性 6–3
6
[ 外観]タブ
HTML 内部属性
コントロールタグに追加する型を、
[ HTML スタイル]テーブルから選択します。
[式]パラメータから[式]
テーブルにズームして、
[ HTML スタイル ]型の式を指定することもできます。
[ 位置とサイズ ]タブ
[ウィンド ウ領域幅]
この欄では、実行時にフォームを表示するウィンド ウの幅を指定します。
[ウィンド ウ領域高さ]
この欄では、実行時にフォームを表示するウィンド ウの高さを指定します。
6.3
HTML フレームセットのフォーム編集
[フォーム]テーブルで、HTML フレームセットのフォームエディタにアクセスするときには、
[ インタフェー
スタイプ ]が HTML フレームセット形式として定義されているフォームの名前からズームします。
図 6.2: HTML フレームセット のフォームエデ ィタ
[フレーム]パレット
[フレーム]パレットには、フレームセットの編集に使用できる、多数の定義済みのフレームセットレ イア
ウトが用意されています。フレームセットのレ イアウトを選択すると、それに合わせてフォーム内のフレー
ムセットが変更されます。
6–4 HTML フレームセット形式フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
6
図 6.3: [フレーム]パレット
[フレーム]パレットからフレームセットのレ イアウトを選択すると、フォーム上の現在のフレームセット
のレ イアウトが自動的に置き換えられます。この場合、フレームの特性をもう一度作成し直さなくてはなり
ません。ただし 、
[コマンド ]パレットの「元に戻す」を選択すると1つ前のフレームセットのデザインに戻
ります。
フレームの編集
[コマンド ]プルダウン メニュー、ポップアップ メニュー、または[コマンド ]パレットのいずれかを使用
すると、フレームセットフォーム内のフレームを編集できます。
[コマンド ]パレット の使用方法
[フレームセットコマンド ]パレットには、特定のフレームまたはフレームセット全体を編集するためのコ
マンドがあります。
図 6.4: [フレームセット コマンド ]パレット
新機能ガ イド
dbMAGIC Ver.8.2
6.3 HTML フレームセットのフォーム編集 6–5
以下に、
[フレームセットコマンド ]パレットのボタンについて説明します。
ボタン
名前
説明
縦に分割
このボタンをクリックすると、カーソルが「縦に分割」カーソルに変
わります。フレーム上で「縦に分割」カーソルを使用してクリックす
ると、そのフレームを 2 つのフレームに縦方向に分割することができ
ます。
横に分割
このボタンをクリックすると、カーソルが「横に分割」カーソルに変
わります。フレーム上で「横に分割」カーソルを使用してクリックす
ると、そのフレームが 2 つのフレームに横方向に分割されます。
フレームセットの選択
指定されたフレームのコンテナフレームまたはフレームセットを選択
します。
フレームセットの表示
選択されたフレームのコンテナフレームを表示しますが 、選択はしま
せん。
縦に均等分割
選択されたフレームを縦方向に均等に 2 分割します。
横に均等分割
選択されたフレームを横方向に均等に 2 分割します。
縦に 3 分割
選択されたフレームを縦方向に均等に 3 分割します。
横に 3 分割
選択されたフレームを横方向に均等に 3 分割します。
ハイパーリンク
選択されたフレームと dbMAGIC プログラムまたは URL との間にハイ
パーリンクを設定します。
選択解除
選択したフレームまたはフレームセットの選択を解除します。
枠なし
フォーム特性の境界線表示を「 Yes 」または「 No 」の値に切り替えま
す。
サイズ連動
フォーム特性の相対サイズを「 Yes 」または「 No 」の値に切り替えま
す。
コントロール削除
選択したフレームを削除します。
区切なし表示
フレームセット間の区切りを非表示にします。
元に戻す
直前に行った操作を取り消します。
やり直し
最後に取り消した操作をやり直します。
HTML ファイル書込
HTML フレームセットの内容をファイルに保存します。
ブラウザで表示
ブラウザを呼び出して、フレームセットを表示します。
6–6 HTML フレームセット形式フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
フレームのコント ロール特性
6
図 6.5: フレームの[コント ロール特性]ダイアログ
フレームセット内の各フレームには、下記のようなコントロール特性があります。
[ 詳細]タブ
■ フレーム名
・ フレームの名前を指定します。
・ フレーム名は、別のフレームで[ハイパーリンク]または[送信]ボタンをクリックしたときに、
リクエストされた目標フレームとしてそのフレームを検索するのに使用します。
・ 対応する HTML コード :<FRAME name="..."...>
■ スクロール:No(デフォルト )
・ 表示されている HTML の内容がフレームより大きいときに、水平スクロールバーと垂直スクロー
ルバーをフレームに表示するかど うかを指定します。
・ 対応する HTML コード :<FRAME scrolling=no...>
■ サイズ変更可能:No(デフォルト )
・ エンド ユーザがフレームサイズを変更できるかど うかを指定します。
・ド ラッグする境界線に隣接するフレームすべてに関し 、この欄を「 Yes 」に設定しなくてはなりま
せん。
・ 対応する HTML コード :<FRAME noresize...>
パラメータを「 No 」に設定した場合。
[ 入力]タブ
■ ハイパーリンク
・ 選択されたフレームと dbMAGIC プログラムまたは URL との間にハイパーリンクを設定します。
・ [ ハイパーリンク]欄からズームすると[ ハイパーリンク]ダ イアログが表示されるので 、ここ
でハイパーリンクを設定します。
・ 選択したハイパーリンクが 、フレーム内に表示されます。
・ 対応する HTML コード :<FRAME src="..."...>
新機能ガ イド
dbMAGIC Ver.8.2
6.3 HTML フレームセットのフォーム編集 6–7
[ 外観]タブ
■ HTML 内部属性
・ [ HTML スタイル ]テーブルから、<FRAME>タグ内に追加する属性を選択します。HTML スタ
イルの番号を返す式を指定することもできます。
6–8 HTML フレームセット形式フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第7章
7.1
7.2
7.3
7.4
Java フォームエディタ
Java フォーム : : : : : : : : :
Java フォームのフォーム特性
Java コント ロール : : : : : :
Java コント ロールの編集方法
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
7–2
7–2
7–4
7–5
第7章
Java フォームエディタ
dbMAGIC バージョン 8 の新機能の 1 つに、
「 Java フォームエディタ」があります。このエデ ィタは、Java 環
境でインターネットアプ リケーションを作成するのに使用します。
「 GUI フォームエデ ィタ」の機能とよく似ていますが 、全く新しい機
「 Java フォームエデ ィタ」の機能は、
能がいくつか加わっています。本章では、これらの新しい機能について説明します。
使用中の特定の Web ブラウザ固有の設定により、フォームが開発時の表示と Web ブラウザでの表示が異な
る場合があります。
7.1
Java フォーム
Java フォームは、クラス1以上として定義してください。レポートや入出力レ イアウト編集の場合と全く同
様に、HTML フォームが表示されるときには、同じ クラスのフォームすべてが[フォーム]テーブルに表示
されます。
「 Java フォームエデ ィタ」の注意事項については、「 5.2 HTML フォーム」の説明を参照してください。
7.2
Java フォームのフォーム特性
[ 詳細]タブ
■ フォーム名
・ [フォーム]テーブルの「名前」
・ この名前は、フォームを表示するときにブラウザのタイトルバーに表示されます。
■ 寸法単位
・ センチメートル単位またはインチ単位でフォームを選択します。
・ Java フォームのサイズと位置は、
「寸法単位」で定義します。フォームの解像度を「寸法単位」で
「C=センチメートル」か「I= インチ」から選択します。
■ 垂直精度
・ 垂直精度では、各測定単位で縦の解像度を指定します。大きい値を指定すると 、解像度も高くな
ります。
・ 各[寸法単位]内の垂直方向の精度を設定します。値が大きいほど 、精度が高くなります。
■ 水平精度
・ 水平精度では、各測定単位で横の解像度を指定します。高い値を指定すると、解像度も高くなり
ます。
・ 各[寸法単位]内の水平方向の精度を設定します。値が大きいほど 、精度が高くなります。
■ グリッド 表示
・ フォームエディタが 、グリッドを表示するかしないかを設定します。
「 Yes 」に設定すると、グリッ
ドが表示されます。
「 No 」に設定すると、グリッド は表示されません。
■ グリッド 間隔 (X)、グリッド 間隔 (Y)
・ フォーム上のグリッド 間隔を設定します。
7–2 Java フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
[ 入力]タブ
■ パレット 最適化:No(デフォルト )
・ 各種カラーパレットが必要な多くのグラフィックイメージのあるフォームの場合、
「パレット最適化」を「 Yes 」に設定すると、各イメージで最適な色を表現する結合カラーパレッ
トを作成できます (256 色のイメージの場合のみ)。
・ 必要な場合に限りデフォルト値を変更するようにしてください。
■ 環境設定
・ [ 環境設定]欄から[ 環境設定]ダ イアログにズームして、そのフォームに適切な環境設定を指
定します。環境設定についての詳細は、「 5.6 dbMAGIC HTML フォームの環境設定」を参照
してください。
■ ウィンド ウを開く:No(デフォルト )
・ 「 Yes 」の値を指定すると、Java アプレット用ウィンド ウを表示することができます。
[ 外観]タブ
■ フォント
7
・ 適切なフォントを選択するときには、
[フォント ]欄から[フォント ]テーブルにズームします。
・ 特定のコントロールのフォントを指定するときには 、
[コントロール特性]ダ イアログを開きま
す。コントロールのフォントを選択しないと 、dbMAGIC がデフォルトとしてフォームのフォン
トを使用します。
■ 色
・ 適切な色を選択するときには、
[ 色]欄から[ 基本色一覧]にズームします。
・ 評価結果が特定の色番号になる式を選択するときには、
[式]欄から[式]テーブルにズームしま
す。実行時には、式の結果が 、優先されます。
■ 背景
・ 現在のフォームの背景に適したファイルを選択するときに、
[背景]欄から「ファイルを開く」ダ
イアログにズームします。
・ 評価結果が特定の背景ファイルになる式を選択するときには、
[式]欄から[式]テーブルにズー
ムします。
■ HTML 内部属性
・[コントロール]タグに追加する属性を、
[ HTML スタイル]テーブルから選択します。
[式]テー
ブルから、選択する[ HTML スタイル ]番号を返す式で指定することもできます。
・ [ HTML スタイル ]テーブルで属性を定義し 、すべてのコントロールの HTML 内部属性でこれ
を指定すると、コントロール上の各種要素を標準化できます。
・ [ HTML スタイル ]テーブルから特定のスタイルを選択するときにこの欄からズームします。
詳細については、「 5.1 環境」の[ HTML スタイル]テーブルの説明を参照してください。
[ 位置とサイズ ]タブ
■ ウィンド ウ領域幅
・ 実行時に表示されるフォームのウィンド ウの幅を指定します。
■ ウィンド ウ領域高さ
・ 実行時に表示されるフォームのウィンド ウの高さを指定します。
新機能ガ イド
dbMAGIC Ver.8.2
7.2 Java フォームのフォーム特性 7–3
7.3
Java コントロール
コント ロールパレット
Java フォームエディタのコントロールパレットには、Java フォームに配置可能な各種コントロールが表示さ
れます。
図 7.1: Java コント ロールパレット
以下に、Java コントロールパレット内のボタンについて説明します。
ボタン
説明
コントロールを選択または選択解除します。コントロールを移動、サイズ変更、削除するとき
または[コントロール特性]ダ イアログにズームするときに、このコントロールを選択しなく
てはなりません。
エデ ィットコントロールを配置します。
[エデ ィットコントロール ]の[コントロール特性]ダ
イアログにズームすると、エディットコントロールに項目または式を対応付けます。コントロー
ル特性の[データ入力]欄を「 No 」に設定すると、通常のスタティックコントロールとして動
作します。
テキストコントロールを配置します。別のプログラムや URL に対するハイパーリンクとして、
テキストコントロールを使用できます。
プッシュボタンを配置します。プッシュボタンはフォームを送信するとき、コントロールすべ
てを初期値にリセットするとき、あるいは URL や別の dbMAGIC プログラムにジャンプするた
めハイパーリンクを接続するときにクリックするために使用します。
オン /オフに切り替えることができるチェックボックスを挿入します。このコントロールは、論
理型の項目や式を表すのに使用します。
2 つ以上の選択項目のあるラジオボタンを配置します。このボタンは、選択肢項目から特定の
値を選択するときに使用します。
7–4 Java フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
ボタン
説明
2 つ以上の選択項目のあるタブカード を含むタブコントロールを配置します。エディットコント
ロールやプッシュボタンなど 他の種類のコントロールをタブコントロール上に置くことができ
ます。
2 つ以上の選択項目のあるリストボックスを配置します。このコントロールは、2 つ以上の項目
から 1 つの値を選択するときに使用します。
2 つ以上の選択項目のあるコンボボックスを配置します。コンボボックスは、一覧から 1 つの
値を選択するときに使用します。
グループコントロールを挿入します。複数のコントロールを一つにまとめる時使用します。
スタティックコントロールの四角形を配置します。四角形では、スタティックテキストを追加で
きます。四角形の色を指定するときには、
[コントロール特性]ダ イアログの[色]欄で設定し
ます。
スタティックコントロールの楕円を配置します。楕円では、スタティックテキストを追加できま
す。
[コントロール特性]ダ イアログ内でそのテキストの位置を指定することができます。楕円
の色を指定するときには、
[コントロール特性]ダ イアログで[ 色]欄を設定します。
ラインコントロールを配置します。線分の色を指定するときには、
[コントロール特性]ダ イア
ログで[ 色]欄を設定します。
Java フォームにテーブルコントロールを挿入し ます。テーブルには、エディットコントロール
やプッシュボタンなどの他の種類のコントロールを配置することができます。
グラフィックイメージを表示する時に使用するイメージコントロールを配置し ます。イメージ
コントロールでは、別のプログラムや URL に対するリンクを設定することもできます。
特定のプログラムや URL にリンクする四角形の領域を イメージ上で指定するのに使用する、
ホットスポットコントロール (四角形) を挿入します。ホットスポットコントロール (四角形) は、
イメージコントロールの上にしか配置できません。
特定のプログ ラムや URL にリンクする、円形の領域を イメージ上で指定するのに使用する、
ホットスポットコントロール (円形) を挿入します。ホットスポットコントロール (円形) は、イ
メージコントロールの上にしか配置できません。
7.4
Java コントロールの編集方法
プルダウンメニュー、ポップアップ メニューまたは Java コマンド パレットのどれかを使用すると、Java フォー
ムでコントロールを編集することができます。
コマンド パレット の使用法
コマンド パレットは、コントロールの整列、サイズ変更およびコントロールの Z オーダの変更を行うための
ツールで構成されています。
新機能ガ イド
dbMAGIC Ver.8.2
7.4 Java コントロールの編集方法 7–5
7
図 7.2: コマンド パレット
以下に、コマンド パレットのボタンについて説明します。
ボタン
説明
選択したコントロールすべてを、選択したフレームの左辺に整列します。
選択したコントロールすべてを、選択したフレームの水平方向の中央に整列します。
選択したコントロールすべてを、フォームの水平方向の中央に整列します。
選択したフレーム内で、選択したコントロールすべてを水平方向に均等に間隔をあけて整
列します。
選択したコントロールすべてを、選択したフレームの右辺に整列します。
選択したコントロールすべてを、選択したフレームの上辺に整列します。
選択したコントロールすべてを、選択したフレームの垂直方向の中央に整列します。
選択したコントロールすべてを、フォームの垂直方向の中央に整列します。
選択したフレーム内で、選択したコントロールすべてを垂直方向に均等に間隔をあけて整
列します。
選択したコントロールすべてを、選択したフレームの下辺に整列します。
選択したコントロールすべてを、最も幅の広いコントロールの幅に拡大します。
選択したコントロールすべてを、最も幅の狭いコントロールの幅に縮少します。
選択したコントロールすべてを、最も高いコントロールの高さに拡大します。
選択したコントロールすべてを、最も低いコントロールの高さに縮少します。
フォーム内で選択したコントロールを、1 階層分前面に移動させます。
フォーム内で選択したコントロールを、1 階層分背面に移動させます。
フォーム内で選択したコントロールを、最前面に移動させます。
フォーム内で選択したコントロールを、最背面に移動させます。
フォーム内に、コントロールの Z オーダを表示させます。
フォーム内のコントロールの自動 Z オーダを有効にさせます。
フォーム間の区切りを非表示にさせます。
7–6 Java フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
ボタン
説明
最後の操作を元に戻します。
最後に元に戻した操作をやり直します。
コントロール間に親子リンクを設定します。
コントロール間の親子リンクを解除します。
テーブル内に選択したコントロールを全て配置します。
親コントロールを表示します。
コントロールの書式のサイズにコントロールのサイズを合わせます。
Java コント ロール特性
Java フォーム上にコントロールを配置した場合、それらが正しく動作するように、コントロールの特性を指
定する必要があります。コントロールをダブルクリックしてコントロール特性ダ イアログにズームします。
図 7.3: [コント ロール特性]ダイアログ
コントロール特性は、以下のタブに分類されています。
■ [ 詳細]タブ
■ [ 入力]タブ
■ [ 外観]タブ
■ [ 位置とサイズ ]タブ
利用できる欄は、選択したコントロールにより異なります。利用できない欄は、淡色表示されるかコントロー
ル特性ダ イアログに表示されません。
[ 詳細]タブ
データ
データは、項目か式のど ちらかとして表現できます。以下のコントロールを除き、コントロールのすべてに
[データ]欄を指定できます。
・ スタティックコントロール
・ ラインコントロール
・ ホットスポット
・ テーブルコントロール
新機能ガ イド
dbMAGIC Ver.8.2
7.4 Java コントロールの編集方法 7–7
7
■ データ [ 値]欄から[項目一覧]にズームし 、該当するコントロールに適した項目を選択します。
■ 式 式を選択するときには、
[ 式]欄から[ 式]テーブルにズームします。
コント ロール名
■ [コントロール名]欄には、名前を入力することができます。ただし 、
[コントロール名]には大文字
と小文字を区別して、30 文字以内で名前を指定します。
■ 以下のコントロールを除き、コントロールのすべてに[コントロール名]を指定できます。
・ スタティックコントロール
・ ラインコントロール
・ ホットスポット
・ テーブルコントロール
書式
■ エデ ィットコントロールやプッシュボタンの[データ]欄に項目を割り当てたときには、
[ 書式]欄か
ら[ 書式]ダ イアログボックスにズームし 、その項目の書式を修正できます。
ラベル
■ 各コントロールの選択肢に表示されるラベルを指定します。
■ 以下のコントロールにラベルを指定できます。
・ ラジオボタン
・ タブコントロール
・ リストボックス
・ コンボボックス
スタティックタイプ
■ Java フォーム上に配置するスタティックコントロールのタイプを選択するときには、
[ スタティックタ
イプ ]欄から[ スタティックタイプ ]ダ イアログにズームします。
■ 以下のコントロールには、スタティックコントロールを指定できます。
・ 四角形
・ 楕円形
・ テキスト
・ グループ ([ スタティックタイプ ]欄から[ スタティックタイプ ]ダ イアログにアクセスすること
はできません )
テキスト
■ スタティックコントロール内に表示されるテキストを表示します。
■ 以下のコントロールには、テキストを指定できます。
・ テキスト
・ スタティックコントロール
・ チェックボックス
7–8 Java フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
イメージボタン
■ Yes …
フォームのレ イアウトにイメージファイルを使用したプッシュボタンを設定できます。使用する
イメージファイルは、
[デフォルト イメージファイル名]パラメータで指定します。
■ No …
デフォルトの[プッシュボタン ]を設定します。
デフォルト イメージファイル名
■ イメージボタンで「 Yes 」を指定した時は、ビットマップファイル (.JPG) を指定します。
[ 入力]タブ
有効
■ 実行時にコントロールを有効化にする場合は、式で指定します。
[ 式]欄から[ 式]テーブルにズーム
できます。
■ 以下のコントロールには、
[有効]を指定できます。
7
・ エディットコントロール
・ ラジオボタン
・ タブコントロール
・ リストボックス
・ コンボボックス
・ チェックボックス
必須入力
■ 「 Yes 」を指定したときには、実行時にこのコントロールに値を入力しなければなりません。
■ 実行時に式を評価して戻り値を求めるときには、
[ 式]欄から[ 式]テーブルにズームします。
■ 以下のコントロールには、
[必須入力]を指定できます。
・ エディットコントロール
・ ラジオボタン
・ タブコントロール
・ リストボックス
・ コンボボックス
・ チェックボックス
データ入力
■ 「 Yes 」を指定すると、実行時にコントロール内の値を変更することができます。
■ 以下のコントロールには、
[データ入力]を指定できます。
・ エディットコントロール
・ ラジオボタン
・ タブコントロール
・ リストボックス
・ コンボボックス
・ チェックボックス
新機能ガ イド
dbMAGIC Ver.8.2
7.4 Java コントロールの編集方法 7–9
複数行編集
■ 「 Yes 」を指定すると、実行時にエデ ィットコントロールでの複数行のテキストを編集できます。
自動ヘルプ
■ 「 Yes 」を指定すると、特定のコントロールに[ 自動ヘルプ ]を関連付けることができます。自動ヘル
プを選択するときには、この欄から[ヘルプ ]一覧にズームします。
■ 以下のコントロールには、
[自動ヘルプ ]を指定できます。
・ エディットコントロール
・ ラジオボタン
・ タブコントロール
・ リストボックス
・ コンボボックス
・ チェックボックス
パスワード エディット
■ [ 複数行編集]欄が「 No 」に設定されているエデ ィットコントロールに対して有効です。
「 Yes 」に設
定すると 、このコントロールで指定した項目の内容はすべて「*」で表示され 、入力した内容を見る
ことはできません。
ハイパーリンク
■ URL または dbMAGIC プログラムにハイパーリンクを設定するときには、
[ ハイパーリンク]欄から
[ ハイパーリンク]ダ イアログにズームします。
■ 以下のコントロールには、ハイパーリンクを指定できます。
・ テキスト
・ 四角形
・ 楕円形
・ イメージコントロール
・ プッシュボタン
・ ホットスポット
ボタンタイプ
■ プッシュボタンに動作を割り当てるボタンタイプの値を選択します。
■ ボタンタイプの値は、以下のとおりです。
S=送信
[ハイパーリンク]欄で設定された関連パラメータを基に、フォームを送信します。
C=取消
フォーム上のすべてのパラメータをクリアし 、初期値にリセットします。
L=リンク 関連のあるハイパーリンクに基づいて、URL にフォームをリンクします。
ホット スポット タイプ
■ イメージコントロール四角形、楕円またはホット スポットに対する[ホットスポットタイプ ]値を選
択します。
■ [ホットスポットタイプ ]値は、以下のとおりです。
7–10 Java フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
S=送信
[ハイパーリンク]欄で設定された関連パラメータを基に、フォームを送信します。
C=取消
フォーム上のすべてのパラメータをクリアし 、初期値にリセットします。
L=リンク 関連のあるハイパーリンクに基づいて、URL にフォームをリンクします。
[ 外観]タブ
フォント
■ フォームのコントロールに適したフォントを選択するときには、
[フォント ]欄から[フォント ]テー
ブルにズームします。また、[式] 欄でズームし 、[式] テーブルから、[フォント ] 番号を返す式を設定す
ることができます。
■ 以下を除き、すべてのコントロールに[フォント ]を指定します。
・ ラインコントロール
・ イメージコントロール
・ ホットスポット
・ テーブルコントロール
7
色
■ フォームのコントロールに適した色を選択するときには、
[色]欄 (テキストモード 色) から[基本色一
覧]にズームします。また、[式] 欄でズームし 、[式] テーブルから、[色] 番号を返す式を設定すること
ができます。
■ 以下を除き、すべてのコントロールに[ 色]を指定できます。
・ プッシュボタン
・ ホットスポット
・ リストボックス
・ コンボボックス
可視
■ 実行時にエンド ユーザに対して、コントロールを表示するか、式で指定します。
■ [ 式]欄から[ 式]テーブルにズームできます。
■ 以下を除き、すべてのコントロールに[ 可視]を指定できます。
・ ホットスポット
タブラベル位置
■ タブを表示する場所を指定するときには、
[タブラベル位置]欄で適切な値を選択します。
■ [タブラベル位置]の値は、以下のとおりです。
・ T=上辺
・ B=下辺
新機能ガ イド
dbMAGIC Ver.8.2
7.4 Java コントロールの編集方法 7–11
スタイル
■ コントロールの外観を指定するときには、
[ スタイル ]欄から適切な値を選択します。
■ 以下のコントロールには、
[ スタイル ]を指定できます。
・ エディットコントロール : W=Windows 立体、2=平面
・ ラインコントロール : 3=凸立体、S=凹立体、2=平面
線幅
■ ラインコントロール( 平面の場合のみ)の線幅を指定します。
境界表示
■ 四角形と楕円コントロールの境界線の線幅を指定します。
カラム数
■ ラジオボタンに表示される列数を指定します。
区切り
■ 「 Yes 」を指定すると、
[テーブル ]コントロール内の行間に区切りが表示されます。
タイト ル高さ
■ [テーブル]コントロールのタイトルの高さを指定します。
行高さ
■ [テーブル]コントロールの行の高さを指定します。
列数
■ [テーブル ]コントロール内の列数を表示します。列数は、
[フォーム]レ イアウトからしか変更でき
ません。
[ 位置とサイズ ]タブ
位置
選択したコントロールの実際の位置または割合での位置を指定するときには、
[ 位置]欄から[コントロー
ル位置]ダ イアログにズームします。
左辺位置
コントロールの左辺位置を設定します。
[式]テーブルをズームして、コントロールの左辺の座標を求める式
を登録することによって、実行時の値を設定できます。
上辺位置
コントロールの上辺位置を設定します。
[式]テーブルをズームして、コントロールの上辺の座標を求める式
を登録することによって、実行時の値を設定できます。
7–12 Java フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
幅
コントロールの水平方向の長さです。
[式]テーブルをズームして、コントロールの幅を求める式を登録する
ことによって、実行時の値を設定できます。
高さ
コントロールの垂直方向の長さです。
[式]テーブルをズームして、コントロールの高さを求める式を登録す
ることによって、実行時の値を設定できます。
[位置]欄に値がある場合や、テーブルコントロールの場合は
無効です。
注意:
動的な位置およびサイズの変更を行った場合、サイズは本来のサイズより小さくはできません。また子
タスクのウィンド ウの動的な変更を有効にするには「子ウィン =Yes 」と設定する必要があります。
また、この時にフォーカスのあるコントロールの位置及びサイズは変更されません。
X1
選択されたラインコントロールの左端のx座標。ラインコントロール用パラメータ。式で指定することによっ
7
て、実行時の値を動的に設定できます。
Y1
選択されたラインコントロールの左端のy座標。ラインコントロール用パラメータ。式で指定することによっ
て、実行時の値を動的に設定できます。
X2
選択されたラインコントロールの右端のx座標。ラインコントロール用パラメータ。式で指定することによっ
て、実行時の値を動的に設定できます。
Y2
選択されたラインコントロールの右端のy座標。ラインコントロール用パラメータ。式で指定することによっ
て、実行時の値を動的に設定できます。
新機能ガ イド
dbMAGIC Ver.8.2
7.4 Java コントロールの編集方法 7–13
7–14 Java フォームエデ ィタ
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 8 章 マージ出力
8.1
8.2
テンプレート
入出力特性
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
8–2
8–3
第8章
マージ出力
[マージ出力]は、dbMAGIC の新しい機能です。dbMAGIC マージタグが指定された作成済みの HTML ファ
イルと、マジックアプ リケーションから取得したデータをマージすることができます。
インターネットアプ リケーションで「マージ出力」機能を使用すると 、dbMAGIC アプ リケーションの開発
と HTML ページの設計を分離させることができます。
HTML 設計者は、HTML ファイル内に dbMAGIC マージタグを挿入するだけですみます。この HTML ファイ
ルは、アプリケーションからの出力をマージするときのテンプレートとして使用されます。このように、す
[デー
でに作成されている HTML ページを利用することができるので、新たに書き直す必要がありません。
タ出力]コマンド にマージ出力オプションが追加されました。このオプションを選択する事でマージ出力操
作が使用できます。ただし 、マージタグを指定できる場合は、
[入出力ファイル ]テーブルの[ メディア]欄
で「R=リクエスタ」を設定した時だけです。
8.1
テンプレート
dbMAGIC マージタグを通常の ASCII 文字列として格納してあるなら、テンプレートファイルの形式は何で
もかまいません 、
マージタグ
マージタグの一般形式は、以下のとおりです。
ト ークン前付符号 Token[ name] ト ークン後付符号
各入出力特性で、トークンの[ 前付符号]と[ 後付符号]は [入出力特性] で指定し ます。デフォルトでは、
トークンの[ 前付符号]と[ 後付符号]はそれぞれ ”<!$”および ”>”が設定されています。
タグの Token[ name] には、以下のどれか 1 つを指定します。
■ MG name
■ MGREPEAT
■ MGENDREPEAT
■ MGIF name
■ MGELSE
■ MGENDIF
<!$MG name >
!$MG_name>は、
[マージ出力]操作の[マージパラメータ]テーブル内で定義されたタグ名を指定します。
<
このタグ名と一致した場合には、実行時に該当するその値が[マージ出力]操作でタグと置き換えられます。
<!$MGREPEAT >
!$MGREPEAT>は、繰返し区分のはじめを現します。
[マージ出力]操作ごとに、繰返し処理されるので、
<
データ行をいくつでも作成できます。このタグは、出力では削除されます。
<!$MGENDREPEAT >
!$MGENDREPEAT>は、繰返し区分の終わりを表します。
<
このタグは、出力で削除されます。
8–2 マージ出力
新機能ガ イド
dbMAGIC Ver.8.2
<!$MGIF name >
!$MGIF_name>タグは、IF ブロックのはじめを表します。指定された名前は、
[ マージパラメータ]テー
<
ブル内に定義されているタグ名と照合されます。対応するデータは、論理型として、評価されます。データ
が TRUE の場合には、IF ブロックの残りの部分が処理されます。FALSE の場合には、ELSE ブロックが処理
されます。
データが論理型ではない場合、評価結果は、
「 TRUE 」であると想定されます。
このタグは、出力で削除されます。
<!$MGELSE >
!$MGELSE>タグは、ELSE のはじめと IF ブロックの終わりを表します。IF ブロックは ELSE ブロックの
前に置かなければなりません。IF ブロックの評価結果が FALSE の場合に、ELSE ブロックが処理されます。
<
このタグは、オプションです。このタグは、出力で削除されます。
<!$MGENDIF >
!$MGENDIF>タグは、IF ブロックの終わり、あるいは ELSE ブロックの終わりを表します。このタグは、
<
!$MGIF_name>が存在する場合には必須です。このタグは、出力で削除されます。
<
構文に関する規則
!$MGREPEAT>と<!$MGENDREPEAT>の両タグの数と順序は、同じでなくてはなりません。
<!$MGIF_name> 、<!$MGELSE>および <!$MGENDIF>の各タグの数と順序も同じでなくてはなりません。
<
!$MGELSE>は、<!$MGIF name>と<!$MGENDIF>の間に定義しなければなりません。
REPEAT ブロックと IF-ELSE-ENDIF ブロックは、ネストできます。
<
8.2
入出力特性
「マージ出力」機能のために、
[入出力]テーブルの[入出力特性]ダ イアログには、以下の欄が新たに追加
されています。
図 8.1: [ 入出力特性]ダイアログ
ファイル名
[ファイル名]には、その入出力ファイルでマージ操作時に使用するテンプレートの名前を指定します。
[論
理名]を使用できます。
「ファイルを開く」ダ イアログからファイルを選択するときには、この欄でズームす
るか、またはダブルクリックします。
[ファイル名]式の欄は、
[ファイル名]欄の右側にあります。この欄では、評価結果が使用するテンプレー
トの名前になる式を指定します。
[ 式]テーブルから式を選択するときに 、この欄でズームするか、ダブルクリックします。
新機能ガ イド
dbMAGIC Ver.8.2
8.2 入出力特性 8–3
8
ト ークン前付符号
[トークン前付符号]欄には、テンプレート内でタグをマージするのに使用する前付符号を指定します。マー
ジ機能は、その文字列で始まるタグを探索し 、タグを置き換えます。デフォルトは、”<!$”です。
ト ークン後付符号
[トークン後付符号]欄には、テンプレート内でタグをマージするのに使用する後付符号を指定します。マー
ジ機能は、その文字列で終わるタグを検索し 、タグを置き換えます。デフォルトは、”>”です。
8.3
[データマージ出力]コマンド
[データ出力]コマンド には、
[フォーム]オプションの他に、
[ マージ ]オプションも 追加されました。
[データマージ出力]コマンド ではマージ機能が有効化され 、マージパラメータを設定できます。
マージパラメータ
[ マージ ]欄は、そのマージ操作に指定されているマージパラメータの数を表示します。
[ マージパラメータ]テーブルを開くときには 、
[ パラメータ]欄でズームするかまたはダブルクリックし
ます。
[マージパラメータ]テーブル
図 8.2: [マージパラメータ]テーブル
[ マージパラメータ]テーブルは、テンプレート内の適切なマージタグと照合し 、置き換えるデータ要素を
指定するときに使用します。
[ マージパラメータ]テーブル内には以下の欄があります。
■ タグ名 … テンプレート内のデータタグと照合すべきデータ要素の名前を表します。選択した入出力ファ
イルの入出力特性内でファイル名を明示的に指定してある場合には、テンプレートファイル内
にあるタグの一覧からズームして、データタグ名を選択できます。
8–4 マージ出力
新機能ガ イド
dbMAGIC Ver.8.2
■ 項目
… 値をタグと置き換えることのできる項目を指定します。BLOB 型の項目を除き、どの項目でも
選択することができます。項目一覧から特定の項目を選択するときには、ズームまたはダブル
クリックします。
■式
… 値をタグと置き換える式を指定します。
■ 名前
… 選択した項目または式の名前を表示します。
■ 書式
… 項目または式の値をテンプレートとマージするときに使用する書式を表します。書式には、項
目に指定されている書式かまたは式のデフォルトの書式のど ちらかがデフォルトとして使用さ
れます。
■式
… 実行時に評価される書式の式を定義します。
ファイル
[ファイル ]欄には、マージされた出力を書き込むファイルまたは装置の番号を、
[入出力ファイル一覧]で
指定します。この[ 入出力ファイル ]には、テンプレートファイル名と[トークン前付/後付符号]が正し
く設定されていなければなりません。
フローと条件
これらの欄は、
[データ出力]コマンド の[フォーム]オプションに定義されている内容と同じです。
8.4
8
例
インターネット のマージ例
以下に、マージ機能を使用した簡単な HTML の例を説明します。
プログラム
個別に設計された HTML ページ内に、dbMAGIC 項目の内容を表示させる dbMAGIC のプログラム。
ステップ
1
[データ出力]コマンドで[マージ]オプションを選択します。
2
[パラメータ]欄でズームして、[マージパラメータ]テーブルを開きます。
3
[マージパラメータ]テーブルに’MsgOfDay’ でタグ名定義します。このタグ名に dbMAGIC の文字型
項目を割付けます。
4
[入出力特性]ダイアログを開き、ファイル名としてマージする HTML フォームを関連付けます。次
に HTML ファイルを指定します。
5
HTML ページ上で dbMAGIC に表示させたい場所に、HTML タグの<!MG_MsgOfDay>を追加します。
新機能ガ イド
dbMAGIC Ver.8.2
8.4 例 8–5
図 8.3: [マージ出力]コマンド
結果
dbMAGIC は、メッセージを使用して文字列の項目を更新します。この項目の内容は、HTML 上レベル上の
MsgOfDay タグ名と置き換わります。
以下の HTML コード は、マージに使用するコード です。
<HTML>
<BODY background="/Pictures/Background/019.jpg" bgcolor="#C0C0C0" text="#000000">
<form name=clock>
<BR>
<H3><IMG src="/Pictures/logo2c.gif" align=bottom alt="Pictures/logo2c.gif">
<table>
<table border=0 cellpadding=0 cellspacing=0>
<tr valign=top><td align=center>
<br clear=left>
</td></tr>
<tr valign=bottom><td align=center>
<input type=text name=face size=12 value=’’>
<FONT color=#80ff00><B><!$MG_MsgOfDay></B></FONT></td></tr>
</table>
</H3>
</form>
</BODY>
</HTML>
8–6 マージ出力
新機能ガ イド
dbMAGIC Ver.8.2
図 8.4: メッセージ : Have a Happy Day
[ファイルマージ ]の例
以下に、マージ出力機能を使用した簡単な例を示します。
プログラム
以下の[データマージ出力]コマンドで、1 から 10 をカウントする dbMAGIC プログラムを定義します。
マージパラメータ
タグ名
式
Number
Counter(0)
IsEven
(Counter(0) MOD 2=0)
入出力特性
入出力特性の[ファイル名]欄に以下の内容のファイルの名前を指定します。
マージ前のファイルの内容
数字
偶数/奇数
Counter
Even/Odd
!$MGREPEAT>
<!$MG Number>
<
<
!$MGIF IsEven>Even
!$MGELSE
<
<
Odd<!$MGENDIF>
>
!$MGENDREPEAT>
結果
以下のような結果で出力されます。
新機能ガ イド
dbMAGIC Ver.8.2
8.4 例 8–7
8
マージ後のファイルの内容
Counter
Even/Odd
1
2
Odd
Even
3
4
Odd
Even
5
6
Odd
Even
7
8
Odd
Even
9
10
Odd
Even
8–8 マージ出力
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第9章
9.1
インターネット APG
インターネット APG の使用方法
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
9–2
第9章
インターネット APG
インターネット APG は、
「 インターネットリクエスタ」や HTML フォームなどの dbMAGIC「 インターネッ
ト 」機能を利用し 、テーブルをベースとした、インターネットプログラムのプロトタイプを作成するのに使
用できます。
インターネット APG は、dbMAGIC APG の一部で、作成モード に制限されており、
「実行」モード では実行
できません。
9.1
インターネット APG の使用方法
図 9.1: [ APG ]ダイアログの[ APG ]タブ
インターネット APG を使用するときには、図 9.1 のような、
[ APG ]ダ イアログを開き、以下の欄を選択し
ます。
[ APG ]タブ
オプション
[ インターネット ]を選択します。
メインテーブル
[テーブル一覧]から[ APG ]で指定するテーブルを選択します。
作成フォーム
APG によって作成されたプログラムを基に、HTML フォームエディタで照会フォームを編集したり、あるい
は[ HTML ファイル書込]コマンド を使用してフォームの内容を HTML ファイルに保存することもできま
す。
[ 作成フォーム]欄には、以下の 3 つのオプションがあります。
9–2
インターネット APG
新機能ガ イド
dbMAGIC Ver.8.2
■ Q=照会
… テーブルを照会するための抽出範囲を設定するのに使用する HTML フォームのあるプ
ログラムを作成します。
APG 実行時に HTML フォームを HTML ファイルとして自動的に保存する場合には 、
「 インターネット 」タブの「照会フォームの保存ファイル名」を指定します。
■ O=出力
… 「 インターネットリクエスタ」を使用してコールされたときに 、照会結果を表示する
のに使用する HTML ド キュメントのあるプログラムを作成します。
■ B=照会と出力 … HTML フォームと HTML ド キュメントを両方持つプログラムを作成します。ただし 、
このプ ログラムは照会結果の表示用でしか動作し ません 。作成されたプログラムが 、
「 インタネットリクエスタ」を使用してコールされると、そのプログラムは照会結果を
表示するための HTML ファイルを作成します。このファイルには、コール側で指定さ
れた条件に合うすべてのレコードが表示されます。
APG 実行時に HTML フォームを HTML ファイルとして自動的に保存する場合には 、
「 インターネット 」タブの「照会フォームの保存ファイル名」を指定します。
照会カラム
[照会カラム]欄には、作成する照会プログラムおよび HTML フォーム内にどの項目を挿入するかを指定し
ます。
[ カラム選択一覧]から項目を選択するときには、この欄でズームします。
出力カラム
[ 出力カラム]欄には、作成される出力プログラムにどの項目を挿入するか、またプログラムによって返さ
9
れる HTML ド キュメントにどの項目を挿入するかを指定します。
[カラム選択一覧]から項目を選択するときには、この欄でズームします。
「照会カラム」欄で選択された項
目については、
「出力カラム」欄で選択されていなくても、セレクトコマンド は作成されますが 、HTML ド
キュメントには、挿入されません。
[ スタイル]タブ
タイト ルバー
プログラム画面にタイトルを付けるかど うかを指定します。
新機能ガ イド
dbMAGIC Ver.8.2
9.1 インターネット APG の使用方法 9–3
[ インターネット ]タブ
図 9.2: [ APG ]ダイアログの[ インターネット ]タブ
照会ウィンド ウタイト ル
[ 照会ウィンド ウタイトル]欄には、HTML フォームのタイトルとフォーム名を指定します。スタイルタグ
の[タイトルバー]欄が「 No 」の場合、タイトルが作成されません。
照会ウィンド ウの壁紙
オプションとして[照会ウィンド ウの壁紙]欄には、HTML フォームの背景イメージとして使用する画像ファ
イルを指定できます。インターネットアプリケーションの画像ファイルの場所に関する規則が適用されます。
その為、CTL 特性/ インターネット開発ファイルルートが設定されていない場合には、この欄は、指定できま
せん。
「ファイルを開く」ダ イアログからファイルを選択するときには、この欄でズームします。
出力ウィンド ウタイト ル
[ 出力ウィンド ウタイトル ]欄には 、HTML ド キュメントフォームのタイトルとフォーム名を指定します。
スタイルタグの[タイトルバー]欄が「 No 」の場合、タイトルが作成されません。
出力ウィンド ウ壁紙
オプションとして[ 出力ウィンド ウ壁紙]欄には、HTML ドキュメントフォームの背景イメージとして使用
する画像ファイルを指定できます。インターネットアプ リケーションの画像ファイル場所に関する規則が適
用されます。その為、CTL 特性/ インターネット開発ファイルルートが設定されていない場合には、この欄
は、指定できません。
「ファイルを開く」ダ イアログからファイルを選択するときには、この欄でズームします。
照会フォームの保存ファイル名
[照会フォームの保存ファイル名]欄には、作成する HTML フォームを HTML ファイルとして出力する時の
ファイル名を指定します。これは、
[照会]または[照会と出力]で APG を実行したときに、指定できます。
ファイル名を指定しないと 、ファイルが作成されません。
「ファイルを開く」ダ イアログからファイルを選択するときには、この欄でズームします。
9–4
インターネット APG
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 10 章
インターネット リクエスタ
10.1 インスト ールと動作環境設定
10.2 リクエスタの使用方法 : : : :
10–2
10–3
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 10 章 インターネットリクエスタ
dbMAGIC「 インターネットリクエスタ」は、
「 Web サーバ」と「 MBR 」との間のリンクを設定するリクエス
タです。このリンクは、
「 dbMAGIC インターネット 」アプリケーションを開発するのに必要です。3 つのリ
クエスタはすべて、最も広く使用されている Web サーバ拡張 API に準拠しておます。
■ CGI
… Common Gateway Interface
ほとんどの Web サーバで使用できる、一般に広く使用されているサーバ拡張 API です。ただ
し CGI は、他の API と比較した場合、多少性能上の制約があります。
■ ISAPI … Internet Server API
すべての Microsoft Web サーバで使用できる、Microsoft 社の API です。
■ NSAPI … Netscape Server API
すべての Netscape Web サーバで使用できる、Netscape 社の API です。
使用する Web サーバを基に、リクエスタを選択してください。ISAPI または NSAPI を利用できる Web サー
バを使用するときには、適切なリクエスタを使用することが必要です。それ以外の場合には、CGI リクエス
タを使用してください。
10.1
インストールと動作環境設定
インストールと動作環境設定は、リクエスタだけでなく、Web サーバによっても異なります。通常、Web サー
バには、特定のディレクトリやサーバ拡張プログラムが実行されるディレクトリを指示する設定が必要です。
リクエスタファイルを、そのディレクトリにコピーするよう設定するか、あるいは Web サーバを認識できる
ように設定しなくてはなりません。各リクエスタのインストールと Web サーバの設定についての注意事項の
いくつかを、以下に記述します。特定の設定についての詳細は、ご利用の Web サーバ付属のマニュアル類を
参照してください。
CGI リクエスタ
CGI リクエスタ実行ファイルの MGRQCGI.EXE には、以下の 2 つの DLL ファイルが必要です。
■ MGRQHTTP.DLL
■ MGRQGNRC.DLL
これらのファイルは通常、Web サーバのマニュアル類で cgi-bin または scripts と呼ばれているデ ィレクトリ
にコピーされます。これらのファイルをインストールしたデ ィレクトリなど 、別のデ ィレクトリに置かれて
いる CGI プログラムを認識できるように、Web サーバを設定することもできます。
ISAPI リクエスタ
ISAPI リクエスタファイルの MGRQISPI.DLL には、以下の 2 つの DLL ファイルが必要です。
■ MGRQHTTP.DLL
■ MGRQGNRC.DLL
Microsoft Web サーバにリクエスタをインストールするには、これらのファイルを Web サーバのデフォルト
のスクリプトディレクトリにコピーします。このディレクトリは、通常/Scripts と表現され 、Web サーバ
のルートデ ィレクトリに置かれています。これらのファイルはデ ィレクト リ内に置いたままにしておくか、
または別のディレクトリにコピーして、ファイルの位置を示すエイリアス (別名) を実行アクセス許可で設定
することもできます。
10–2
インターネットリクエスタ
新機能ガ イド
dbMAGIC Ver.8.2
NSAPI リクエスタ
NSAPI リクエスタファイルの MGRQNSXX.DLL(XX=20 または 、35) には 、以下の 2 つの DLL ファイルが
必要です。
■ MGRQHTTP.DLL
■ MGRQGNRC.DLL
Netscape Web サーバにリクエスタをインストールするには、これらのファイルをサーバの bin/httpd ディ
レクトリにコピーします。ディレクトリ内にこれらのファイルを置いたままにし 、
[ハイパーリンク]ダ イア
ログの[ URL ]欄で DLL のフルパスを指定することもできます。
httpd-servername/config デ ィレ クトリ内にある、設定ファイルを編集し ます。変更を行なう前に必
ず、これらのファイルのバックアップをとっておいてください。
1
Web サーバディレクトリにある MIME.TYPES ファイルに次の1行を追加します。
type=magnus-internal/magic-requester exts=mgreq
MGREQ はユーザ指定のファイル拡張子で、ここには任意の拡張子を指定できます。
2
Web サーバディレクトリにある OBJ.CONF ファイルに次の1行を追加します。
Init fn=load-modules shlib="D:/Netscape/SuiteSpot/bin/https/Mgrqns##.dll"
funcs="mgrqnsapi"
3
OBJ.CONF ファイルに次の1行を追加します。
Service method=(GETjPOST) type=magnus-internal/magic-requester fn=mgrqnsapi
以上の設定で、
[動作環境]ダ イアログの[パーティショニング ]タブの[ HTTP リクエスタ]パラメータの
値を次の形式で指定します。
http://サーバアドレス/req.mgreq
10
上記の「サーバアドレス」には、実際に使用するサーバのアドレスを指定します。また、
「 mgreq 」には、ス
テップ 1 で指定したファイル拡張子を指定します。なお、MGRQNS##.DLL というファイル名は指定できま
せん。
注意:
上記の環境設定は 、リクエスタのインストール時に自動的に行われますが 、Netsacpe Administrator で
Web サーバの設定を変更した場合、上記の設定が削除される場合があります。Netsacpe Administrator で
の変更後は、上記環境ファイルの内容を確認してください。
10.2
リクエスタの使用方法
「 インターネットリクエスタ」は、ブラウザの HTML ファイルから dbMAGIC プログラムを実行し 、プログ
ラムの実行結果をブラウザに返すのに使用します。
リクエスタおよびリクエストパラメータは 、以下の方法で指定できます。
■ アクション区分がリクエスタを参照する URL であるようなパラメータを付加して送信するか、あるい
は ”hidden”フィールド として送信します。
■ URL がリクエスタを参照するハイパーリンクをパラメータとして指定します。
■ リクエスタを参照する URL をブラウザから直接入力します。
新機能ガ イド
dbMAGIC Ver.8.2
10.2 リクエスタの使用方法 10–3
リクエスタの参照
以下に、外部 HTML ページから 、あるいはブラウザから直接リクエスタを使用する方法について説明し ま
す。dbMAGIC プログラムによって作成されたページからリクエスタを使用する場合には、dbMAGIC が適切
な HTML コード を自動的に作成します。URL でリクエスタを参照するのに使用する方法は、どのリクエス
タを使用するか、およびそれがどのようにインストールされているかにより異なります。以下の表に、いく
つかの例を示します。
リクエスタ
URL の参照方法
CGI
http://servername/cgi-bin/mgrqcgi.exe
ISAPI
NSAPI
http://servername/scripts/mgrqispi.dll
http://servername/req.mgreq
パラメータ
他のリクエスタをコールするときに利用できるパラメータはすべて 、
「 インターネット リクエスタ」をコー
ルするときにも同様に利用できます。これらのパラメータを以下に列挙します。
■ APPNAME
■ PRGNAME
■ ARGUMENTS
■ PRIORITY
■ USERNAME
■ PASSWORD
ARGUMENTS を指定する場合、データの型と内容をカンマ区切りで記述し ます。構文は最初に - ( ハイフ
ン )、続けて型、最後に内容を記述します。型は文字の場合 A 、数値の場合 N 、論理の場合 L 、NULL 値の場
合 U を指定します。
パラメータの指定
パラメータは 、
[ hidden ]フィールド として、あるいは URL の一部として指定することができます。
以下に、ISAPI リクエスタを使用した各方法の例を示します。各例で実行するアクションは同じです。仮に、
PetShopDemo アプ リケーションに「 HTMLOrdersList 」プログラムがあるとします。
1
PetShopDemo アプリケーションの「HTMLOrdersList」プログラムを指定します。
2
リクエストの優先順位を指定します。
3
ユーザ ID とパスワードの組み合わせを指定します。
Hidden フィールド の例
<FORM action="/scripts/mgrqispi.dll" method="POST">
<INPUT type="hidden" name="APPNAME" value="PetShopDemo">
<INPUT type="hidden" name="PRGNAME" value="HTMLOrdersList">
<INPUT type="hidden" name="PRIORITY" value="4">
<INPUT type="hidden" name="USERNAME" value="supervisor">
<INPUT type="hidden" name="PASSWORD" value="12345">
<INPUT type="submit" name="" value="Submit">
</FORM>
10–4
インターネットリクエスタ
新機能ガ イド
dbMAGIC Ver.8.2
URL の例
上記の例で指示したリクエストを実行する URL の使用方法を以下に示します。
<A href="/scripts/mgrqispi.dll?APPNAME=PetShopDemo&PRGNAME=HTMLOrdersList
&PRIORITY=4&USERNAME=supervisor&PASSWORD=12345">
Call PetShopDemo - HTMLOrdersList
</A>
URL を使用してパラメータを指定するときには、いくつかの文字はそのとおりにパラメータ値で使用するこ
とができないので、URL エンコード を行わなくてはならないという点に注意してください。
例えば 、スペースを使用したい場合には、URL エンコード 文字列の%20 としてスペースを入力する必要があ
ります。アプ リケーション名の Pet Shop Demo を表すパラメータ値は、以下のように入力します。
APPNAME=Pet%20Shop%20Demo
10
新機能ガ イド
dbMAGIC Ver.8.2
10.2 リクエスタの使用方法 10–5
10–6
インターネットリクエスタ
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 11 章
11.1
11.2
11.3
11.4
11.5
11.6
11.7
11.8
11.9
SQL
SQLWHERE 句 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–2
片方向および双方向での動作 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :11–4
照会モード 時位置付( インクリメンタルサーチ ) : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :11–5
RDBMS を使用したソート 処理 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–5
CNDRANGE 関数 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–6
INTRANS 関数 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–6
環境設定/ ISAM ト ランザクション : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–7
ト ランザクション内でのロッキング : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :11–7
RDBMS 設定の方法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11–8
第 11 章 SQL
本章では、SQL 固有の拡張機能と SQL 関連拡張機能、ならびに dbMAGIC バージョン 8 における変更内容
について説明します。
SQLWHERE 句
11.1
「 SQL WHERE 句」機能の目的は、開発者が「 SQL コマンド 」のタスクを使用しなくても、dbMAGIC によっ
て自動的に作成された WHERE 句の他に、SQL 固有の WHERE 句も使用できるようにすることにあります。
これは、dbMAGIC の項目を使用して SQL 文で範囲を指定するためのインタフェースです。この範囲は、
「レ
コード メイン 」で指定されて dbMAGIC が自動的に作成される WHERE 句に連結されます。
SQL WHERE 句フォームにより、開発者は範囲を指定し 、dbMAGIC によって作成される WHERE 句全体を
参照することができます。
SQL WHERE 句の使用方法
SQL の範囲は、フォームを使用して指定することができます。このフォームは、以下の要素で構成されてい
ます。
・ カラム一覧
・ WHERE 句の項目追加
・ WHERE 句の項目全体表示
カラム一覧
カラム一覧は、SQL WHERE 句内で使用することができるすべての項目の一覧です。このような項目には、
以下のものがあります。
・ メインテーブルとリンクジョインのテーブルの実カラム
・ 親タスクの項目
・ 現在のタスクの実項目と変数項目
WHERE 句の項目追加
SQL での範囲条件を書き込む自由形式のテキストフォームを表示し ます。以下に 、これらについて記述し
ます。
・ カラム番号 (A 、B 、C など ) の前にコロン (:) を付けます。カラムが メインテーブルまたはリンクジョ
インのテーブルのど ちらかの場合には、SQL データベースのカラム名と置き換えられます。変数項目
の場合には、その型に従って値と置き換えられます。文字型項目の場合、dbMAGIC は後続のスペース
を無視し 、これに引用符を付加します。
・ @:符号が前付け符号として付加されたカラム番号 (A 、B 、C など ) で、メインテーブルやリンクジョイ
ンのテーブルから得られない文字型項目は、DB 側のカラム名をリネームしなくてもその値と置きかえ
られます。
・ カラム番号
11–2 SQL
新機能ガ イド
dbMAGIC Ver.8.2
WHERE 句の全体表示
11
dbMAGIC が作成する SQL 構文で指定する WHERE 句を表示できます。画面のいちばん下にある[ 表示切
替]ボタンを押すと 、
「 リンク結合」の結合条件を含む WHERE 句を再表示します。作成した SQL 構文を使
用して以下のような WHERE 句全体を表示します。
・ レコード メインの[ 範囲]欄の「開始」式と「終了」式を指定することで作成された WHERE 句。
・ レコード メインの範囲に連結するため、AND 句といっしょにカッコ内に付加された SQL WHERE 句。
WHERE 句は、カラム一覧内のカラムが指定された場合にはすべてこれと置き換わります。メインテーブル
とリンクジョインのテーブル内の実項目は「カラム名」または「 A. カラム名」の書式と置き換えられ 、変数
項目は実際のデータと置き換えられます。
dbMAGIC が項目をその内容と置き換えるときには、項目の型をチェックし 、文字型項目の場合には必要に応
じて”-”を引用符として追加します。dbMAGIC に、文字型項目に引用符を付加させず、構文を書き込めるよ
うにするためには、前付符号として’@:’ 文字を項目番号に付加する必要があります。
例えば 、
A は DB 名 Employee.jobname の実項目で、B は Vjobname という文字型変数項目で、その実行時の値
が ”AB”だとすると、
SQL の範囲に
:A like ’B%’ を書き込むと、
Employee.jobname like ’B%’ として表示され 、実行時に
Employee.jobname like ’B%’ に変換されます。
SQL の範囲に
:A like :B を書き込むと、
Employee.jobname like ["Vjobname"] として表示され 、実行時に
Employee.jobname like "AB"に変換されます。
C が変数項目で、その名前が Voperation で、実行時の値が "like"であるとすると 、
SQL の範囲に
:A @:C :B を書き込むと、
Employee.jobname [Voperation] ["Vjobname"] と置き換えられ 、実行時に
Employee.jobname like "AB"に変換されます。
SQL WHERE 句の動作
タスクにデータビューを作成すると、dbMAGIC の範囲条件のある SELECT 構文を作成します。WHERE 句
の最初の要素は、レコード メインの[ 範囲]欄の[ 開始]欄と[ 終了]欄の式に基づいています。項目のど
れか 1 つを変更すると、dbMAGIC が範囲を計算しなおし ます。
WHERE 句の第 2 の要素は、SQL WHERE 句の範囲指定により作成されます。これはすべての SELECT 構文
に付加されます。項目の値は、タスクを開始したときに一度だけ評価されますが 、再計算は行なわれません。
dbMAGIC が内部で Get Current および Hook(ロック方式によって決定) コマンド に対する SELECT 構文を作
成するときは 、SQL の範囲が使用されません。これらのコマンド では、dbMAGIC が位置インデックスを使
用してレコード を取得するので、SQL 範囲は必要ありません。
SQL WHERE 句の使用方法について
■ SQL WHERE 句を使用したタスクで定義された変数項目は、コール側タスクのパラメータから得られ
た値でなくてはなりません。さもないと、それらのデフォルト値が使用されてしまいます。つまり、代
入式は、後で計算されるので使用することはできません。
■ BLOB 項目と MEMO 項目は、SQL 範囲内では使用できません。
新機能ガ イド
dbMAGIC Ver.8.2
11.1 SQLWHERE 句 11–3
■ dbMAGIC は、SQL 範囲内の構文をチェックしません。したがって、無効な SQL の構文を使用すると、
実行時に RDBMS からメッセージが発行されます。
■ dbMAGIC は、SQL 範囲内で使用されている各項目の型をチェックしません。dbMAGIC は、SQL 範囲
文字列内の各型を文字列に変換し 、それぞれの位置で連結しようとし ます。したがって、型を正し く
使用することが大切です。
■ [リンク結合]を使用すると、dbMAGIC がテーブル名に別名を使用します。したがって、Table1.Column2
の代わりに、A.Column1 を使用します。カラム名のある文字列を SQL で書き込むときには、そのテー
ブルに対応する別名文字をカラム名に前付けしなくてはなりません。
■ dbMAGIC は、後続のスペースを無視します。例えば 、変数項目の Vcoll が文字型の 10 桁で 、その値
が ’ABC’ のときには、:Vcoll を書き込むと、実行時に’ABC
’ ではなく、’ABC’ に変換されます。
図 11.1: [ SQL WHERE 句]ダイアログ
片方向および双方向での動作
11.2
片方向および双方向インデックスでの動作は、オンラインタスクのときだけ関係があります。
RDBMS では片方向インデックスだけしか使用できません。特定の行に位置付けしたいときには、dbMAGIC
が次の 3 つのステップを実行します。
ステップ 1
値を検索します。
SELECT empno,rowid
FROM emp
WHERE empno=3
ORDER BY empno ASC
ステップ 2
画面上の特定の行より下の行すべてを検索します。
SELECT empno,rowid
FROM emp
WHERE empno3 >= 3
ORDER BY empno ASC
11–4 SQL
新機能ガ イド
dbMAGIC Ver.8.2
ステップ 3
11
画面上の特定の行より上の行すべてを検索します。
SELECT empno,rowid
From emp
WHERE empno <= 3
ORDER BY empno DESC
片方向インデックスの場合:
■ 画面の上辺に行が表示されます。
■ ステップ 1 とステップ 2 だけを実行します。
■ 上方向のスクロール用に、レコードがバッファに保持されます。
■ 位置付けした行より上にはスクロールできません。
双方向インデックスの場合:
■ 動作がフラグによって異なります。
■ [ 設定/動作環境]で[ 画面の中央位置付]が指定されている場合には 、その行が画面の中央に表示
され 、3 つのステップすべてが実行されます。
■ ステップ 3 では、降順でデータベースがソートされます。ただし 、性能が劣化します。
これは、一部の RDBMS では、インデックスが逆方向に移動できないという理由によります。
; ;
片方向インデックスを使用する場合に[テーブルの末尾]のアクション ( Ctrl + End ) は、無効です。
注意:
できるだけ、片方向インデックスを使用してください。
■ dbMAGIC Ver7 から移行する場合は、
[ 設定/動作環境]の[ 画面の中央位置付]パラメータを「 No 」
に設定します。このようにすると、明示的に上向きにスクロールしようとしたときだけ、ステップ 3 が
実行されます。
照会モード時位置付(インクリメンタルサーチ)
11.3
インクリメンタルサーチを使用するときには、文字を入力するたびに上記ステップに説明した SELECT 構文
のすべてを dbMAGIC が再発行します。
アプ リケーションでインクリメンタルサーチを使用しないようにすることをおすすめします。
RDBMS を使用したソート処理
11.4
SQL データベースの使用時には 、RDBMS エンジンが ORDER BY 句を使用して動的にソートできるので 、
ISAM ファイルで必要とされるようなインデックスを指定する必要がありません。
dbMAGIC におけるソートの方法は変わりませんが 、設定されたカラムすべてが メインテーブルとリンクジョ
インのテーブルの要素となるときには 、dbMAGIC が RDBMS にソートを行わせます。RDBMS にソートさ
せることができない場合には、dbMAGIC が以前のバージョンの場合と同様に、一時ファイルを使用してソー
トします。
タスクでのソートの方法は、そのテーブルの仮想インデックスの定義方法と同じです。ソートを使用すると、
ユーザに必要な組み合わせの多数の仮想インデックスを開発者が指定しなくて済みます。
ソート の方法
dbMAGIC の以前のバージョンの場合と同様、使用するソートセグ メントを指定できます。
新機能ガ イド
dbMAGIC Ver.8.2
11.3 照会モード 時位置付( インクリメンタルサーチ ) 11–5
ソート 処理の動作
セグ メントすべてが メインテーブルとジョインされたテーブルの要素であるようなソートを定義すると 、
dbMAGIC がそのタスクに関する SELECT 構文を再発行し 、ソートで定義されたカラム名を使用して、ORDER
BY 句とカラム名を置き換えます。
dbMAGIC には必ず、ユニークな ORDER BY 句を必要とします。この ORDER BY がユニークであることを
指定しなかった場合、または組み合わせたの分類セグ メントがユニークであると dbMAGIC が判断できなかっ
た場合には、ORDER BY 句に位置インデックスセグ メントが付加されます。
ソートで選択したカラムの要素がメインテーブルとジョインされたテーブルの要素ではない場合には、dbMAGIC
が一般的なソートファイルを作成します。
ソート の使用方法について
ORDER BY 句が生成されるソートを指定すると 、RDBMS が照会を実行するのにインデックスを使用し ま
せん。
CNDRANGE 関数
11.5
CNDRANGE を使用すると、最小範囲および最大範囲内および位置付式で、条件付き範囲を指定できます。
条件パラメータの評価結果が「 False 」のときには、範囲指定や位置付指定の動作が機能しません。
この関数は、式の最小値と最大値で NULL 値のあるカラムを検索できなかったり、あるいは性能を劣化させ
るようなときに使用できます。
構文:
CNDRANGE(条件、値)
パラメータ: 条件
値
戻り値:
… 実行時に評価される論理式
… 条件が「 True 」のときに返される値
M>条件パラメータの評価の結果が「 True 」だったときに[ 値]パラメータの値。
<
ただし 、条件パラメータの評価結果が「 False 」の場合には 、戻り値またはアクショ
ンはありません。
例:
CNDRANGE(’TRUE’Log,10)
この関数は、数値 10 を返します。
CNDRANGE(’FALSE’Log,20)
この関数は評価されず、関数を設定していない場合と同等に動作をします。
注意事項:
ただし 、この関数は、セレ クトコマンド では位置付式や範囲式にしか使用することができません。
値の型は、選択した項目の型と一致していなくてはなりません。
INTRANS 関数
11.6
INTRANS 関数は、トランザクションが現在オープン中かど うかを評価します。この関数にはパラメータが
なく、トランザクションが処理中であるかど うかを示す論理値の「 True 」/「 False 」を返します。
構文:
INTRANS()
パラメータ: なし
戻り値:
11–6 SQL
論理値
新機能ガ イド
dbMAGIC Ver.8.2
11
環境設定/ ISAM トランザクション
11.7
[ 設定/動作環境]ダ イアログの[ マルチユーザ]タブで[ ISAM トランザクション ]は、以前のバーション
での[ 設定/動作環境]の[データリカバリ]に置き換わるパラメータです。
有効値:「 Yes 」または「 No 」
dbMAGIC は常に、トランザクション処理で基本となるデータベースのサービスを利用します。ただし 、ISAM
ファイルを使用するときには、トランザクションを使用するかど うかはオプションです。
トランザクションをプログラム内で指定すると 、dbMAGIC がそのプログラムに関与している各テーブルの
データベースをチェックします。テーブルが ISAM データベースから取得される場合には 、dbMAGIC が各
パラメータを基にそのデータベースにトランザクションを適用するかど うかを決定します。
■ Yes … ISAM データファイルにトランザクション処理を適用するよう dbMAGIC に指示することができ
ます。
■ No …
すべての ISAM データファイルでトランザクション処理を無効にできます。このパラメータは 、
プログラム内のトランザクションに対するリクエストを無効にします。
トランザクションでは高度なデータの保全性が確保されます。プログラム内でのトランザクションの対象範
囲は開発者が決定します。
変更内容:直後から有効
MAGIC.INI とコマンド ラインでの名前:
ISAM Transaction
トランザクション内でのロッキング
11.8
dbMAGIC バージョン 8 では、トランザクション処理中でなくてもロックを行うことができます。
「 On-lock
レコードトランザクション 」モード では、ロックが発生したときだけトランザクションが開始されます。
図 11.2: 「オンロック」モード
実行時の動作
実行エンジンは、レコードトランザクションモード を「 L=オンロック」に設定すると、ロックが呼び出され
ているときだけトランザクションを開始します。
ロック時に「 L=オンロック」モードが選択されていなかったときには、エラーメッセージの「トランザクショ
ン外のためビューはロックできません。」が表示され 、トランザクションが開始されます。
この場合、タスクはアボートします。
新機能ガ イド
dbMAGIC Ver.8.2
11.7 環境設定/ ISAM トランザクション 11–7
RDBMS 設定の方法
11.9
dbMAGIC の以前のバージョンでは、DBMS の設定項目を[ DBMS 特性]テーブルの[パラメータ]欄に入
力していました。Ver8 では、DBMS の設定を DBMS 特性ダ イアログで行ないます。
図 11.3: [ DBMS 特性]ダイアログ
DBMS 特性
名前
タイプ
デフォルト
ゲート ウェイ
1
プランの出力
Yes/No
No
MS-SQL
2
ログレベル
なし 、開発者向け、サポー
なし
すべて
ト向け、ユーザ向け
3
ログファイル名
255 桁までの文字列
なし
すべて
4
5
同期
No
3
すべて
最大接続数
Yes/No
数字
6
7
分離レベル
数字
テーブルの存在チェック
Yes/No
-1
No
MS-SQL
すべて
MS-SQL
ログの設定
プランの出力
「プランの出力」を「 Yes 」に設定すると、ログファイル
一部の RDBMS は、プランの表示を可能にします。
内にプランが書き込まれます。
ログレベル
ログファイル名には、任意の有効な名前を指定できます。
「ログレベル」には、ログファイルに書き込む 3 つ
の情報レベルのどれか 1 つを指定できます。
11–8 SQL
新機能ガ イド
dbMAGIC Ver.8.2
ユーザ向けレベル
11
プログラムのフローに関係のある情報が含まれます。
例: 環境、バージョン、ログファイルの始めの接続文字列。ゲートウェイによって作成される SQL 構
文および開始トランザクションとコミットトランザクション。プログラムの実行経過を追跡するとき
には、ユーザ向けレベルを使用することをおすすめします。
開発者向けレベル
タイムスタンプ、値および dbMAGIC と DBMS との間の情報が含まれます。
サポート 向けレベル
問題を特定するのに使用する詳細情報があります。
ログ同期
このフラグは、
「 No 」のデフォルトの設定を推奨します。ゲートウェイがクラッシュしてしまうような深刻
な問題が発生した場合には、この値を「 Yes 」に設定して、ゲートウェイをクラッシュさせたアプリケーショ
ン内の正確な位置を突き止める必要があります。
最大接続数
MS-SQL などのような一部の RDBMS は、内部インプリメンテーションでそれぞれ異なる数の接続を使用し
ます。
デフォルトの数の接続を使用する場合には、0 を指定します。
データベースに対する接続数を指定するときには 0 以外を指定します。
分離レベル
一部の RDBMS では、異なる分離レベルを指定できます。詳細については、関連する RDBMS のマニュアル
類を参照してください。
テーブルの存在チェック
この設定によって、データベース特性の[テーブルの存在チェック]欄のデフォルト値が決定されます。テー
ブルの存在チェックは、実行時にアクセスするすべてのテーブルの存在を dbMAGIC がチェックするかど うか
を指定します。
■ No …
いかなる場合でも、データベース内にあるテーブルを dbMAGIC が作成しません。特定のテーブ
ルが存在しない場合には、RDBMS によってエラーが発行されます。
■ Yes …
新機能ガ イド
dbMAGIC Ver.8.2
dbMAGIC がデータベース内にテーブルがない場合にテーブルを作成します。dbMAGIC は、実
行時にアクセスしようとするすべてのテーブルの存在をチェックしするので、性能が劣化します。
11.9 RDBMS 設定の方法 11–9
[データベース特性]内の SQL タブ
図 11.4: [データベース特性]ダイアログ内の SQL タブ
名前
タイプ
デフォルト
ゲート ウェイ
1
2
ヒント
なし
テーブルの存在チェック
255 文字までの文字列
Yes/No
No
Oracle 、MS-SQL
すべて
4
5
配列のサイズ
数字
20
Oracle 、MS-SQL
XA トランザクション
データベース情報
これは、以前の dbMAGIC のバージョンの場合と同様、フリーフォーマットの入力欄です。
ヒント
Oracle および MS-SQL などの一部の RDBMS では 、照会の処理に関するヒントをオプティマイザに与える
ことができます。この欄では、SELECT 構文に連結する文字列を入力できます。
特定の構文の場合には、関連する RDBMS のマニュアル類を参照してください。
テーブルの存在チェック
この設定は、
[テーブル]リポジトリのテーブル特性の[テーブルの存在チェック]欄が「 D=データベースに
依存」の場合のみ有効になります。この設定は、dbMAGIC が実行時にアクセスしようとするすべてのテー
ブルの存在をチェックするかど うかを指定します。
「 No 」を指定すると 、存在チェックを行わずテーブルが存在しない場合でも、dbMAGIC がデータベース内
にテーブルを作成しません。テーブルが存在しない場合には、RDBMS がエラーを発行します。
「 Yes 」を指
定すると、必ず存在チェックを行いテーブルが存在しない場合、dbMAGIC がデータベースにテーブルを作成
し ます。dbMAGIC は 、実行時にアクセスするすべてのテーブルの存在もチェックするので、性能が劣化し
ます。
配列のサイズ
この設定では、一度に読み込むレコード 数を指定します。大量のデータを読み込むときには、配列のサイズ
を設定することによって性能が向上する場合があります。
11–10 SQL
新機能ガ イド
dbMAGIC Ver.8.2
11
[テーブル特性]内の SQL タブ
図 11.5: [テーブル特性]ダイアログの SQL タブ
名前
タイプ
1
オーナー名
2
3
位置
インデックス
4
5
デフォルトの位置
テーブルの存在チェック
Yes/No/D=データベースに依存
D
すべて
6
テーブルのタイプ
テーブル/ビュー
テーブル
すべて
7
ヒント
Yes/No
Yes
Oracle 、MSSQL
8
9
カーソル
デフォルト /Yes/No
デフォルト
配列のサイズ
数値 4
なし
MS-SQL
Oracle 、MS-
デフォルト
ゲート ウェイ
文字列
なし
すべて
重複不可インデックス/デフォルト
デフォルト
すべて
重複不可インデックス/ インデックス番号
なし
なし
SQL
注意:
1. [ヒント ]値は、
[データベース]特性から継承されますが 、ここで上書きすることができます。
2. 配列のサイズは、ここには表示されません。
3. オブジェクトのタイプ : テーブルまたはビューを定義取得するときには、dbMAGIC がそのタイプ
を表示します。
4. テーブルの[ 位置]インデックスとして dbMAGIC は固有のデフォルトを使用します。Oracle で
は、dbMAGIC は ROWID カラムを使用します。他の RDBMS では、dbMAGIC は、最短のユニー
クインデックスを使用します。開発者は、dbMAGIC のデフォルトを上書きしたり、あるいは[位
置]インデックスとして別のインデックスを使用することもできます。
5. テーブルまたはビューのオーナー。長さは、ゲートウェイによって規定されたオーナー名の長さ
新機能ガ イド
dbMAGIC Ver.8.2
に従って指定します。
11.9 RDBMS 設定の方法 11–11
SQL タブ - インデックス特性
図 11.6: インデックス特性
名前
タイプ
デフォルト
ゲート ウェイ
DB インデックス名
インデックスのタイプ
なし
なし
すべて
実/仮想
実
すべて
1
2
ヒント
クラスタ
Yes/No
Yes/No
Yes
No
Oracle 、MS-SQL
MS-SQL
3
インデックスの再作成
Yes/No
No
すべて
1
注意:
1. 「ヒント 」値は[データベース]特性から継承されますが 、ここで上書きすることができます。
2. MS-SQL でインデックスを作成するときには 、1 つのインデックスをクラスタ化インデックスと
して指定することができます。この場合、
「 Yes 」に設定しなくてはなりません。dbMAGIC がテー
ブルを作成するときに 、そのインデックスをクラスタ化インデックスとして作成するよう指示す
11–12 SQL
ることができます。クラスタ化インデックスとして指定することができるのは、1 つのインデック
スだけです。
新機能ガ イド
dbMAGIC Ver.8.2
11
SQL タブ - カラム特性
図 11.7: カラム特性 - SQL タブ
名前
タイプ
デフォルト
ゲート ウェイ
1
DB カラム名
なし
なし
すべて
2
タイプ
255 桁までの文字列 (RDBMS
のデータタイプ )
なし
すべて
ユーザ定義データ型
255 桁までの文字列
なし
MS-SQL
3
注意:
1. タイプはカラムの SQL データタイプを表します。
2. 一部の RDBMS では、ユーザタイプを指定できます。データベースからテーブルを定義取得する
ときには、dbMAGIC が各カラムの「ユーザタイプ 」欄にこのユーザタイプのもとになるタイプを
取得します。新しいテーブルを作成するときには 、dbMAGIC が RDBMS のタイプとしてこれを
使用します。
DB カラム名の作成
SQL テーブルに定義されているすべてのカラムのデータベース名は自動的に作成されます。
新機能ガ イド
dbMAGIC Ver.8.2
11.9 RDBMS 設定の方法 11–13
11–14 SQL
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 12 章 キャッシュ
12.1
12.2
12.3
12.4
[テーブル特性]ダイアログ
[タスク制御]ダイアログ
[ DB テーブル]
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
dbMAGIC キャッシュ
12–2
12–3
12–4
:
:12–4
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 12 章 キャッシュ
本項では、dbMAGIC キャッシュの使用方法の変更内容と dbMAGIC キャッシュに関連するユーザインタフェー
スの変更内容について説明します。
12.1
[テーブル特性]ダイアログ
[ 高度な設定]タブ
[キャッシュ範囲]欄
[キャッシュ範囲]欄には、テーブルで使用するキャッシュの範囲を指定します。
[キャッシュ範囲]欄には、以下のいずれかの値を選択できます。
■ P=位置
… キャッシュには取り出すレコード の位置に関する情報を保持します。メインテーブル
としてテーブルを使用する場合にのみ有効です。逆方向にスクロールすると、物理
的位置に従ってレコード を読み取ることにより、再度データが取り出されます。
■ D=位置とデータ … キャッシュには位置の情報に加えてレコード の実データを保存します。そのレコード
のデータを取り出すときには、キャッシュからデータが取り出されます。
■ N=なし
… キャッシュを使用しません。
図 12.1: [テーブル特性]ダイアログ
12–2 キャッシュ
新機能ガ イド
dbMAGIC Ver.8.2
[タスク制御]ダイアログ
12.2
12
[ 高度な設定]タブ - ロックオプション
[キャッシュ範囲]欄
この欄には、タスクのメインテーブルに使用するキャッシュ範囲を指定します。
[キャッシュ範囲]欄は、以
下のいずれかの値を選択できます。
■ P=位置
… キャッシュには、取り出すレコード の位置に関する情報を保持します。逆方向
にスクロールすると、物理的位置に従ってレコード を読み取ることにより、再
度データが取り出されます。
■ D=位置とデータ
… キャッシュには、位置の情報に加えてレコード の実データを保存します。その
レコード のデータを取り出すときには 、キャッシュからデータが取り出され
ます。
■ N=なし
… キャッシュを使用しません。
■ T=テーブル特性に依存 … テーブル特性に定義されている「キャッシュ範囲」欄の設定にもとづいて動作
します。
デフォルト値: テーブルの設定
図 12.2: [タスク制御]ダイアログ - ロックオプション
新機能ガ イド
dbMAGIC Ver.8.2
12.2 [タスク制御]ダ イアログ 12–3
12.3
[DB テーブル]
[キャッシュ]欄
[キャッシュ]欄は、リンクしているテーブルにのみ有効です。この欄では、DB をキャッシュを使用するか
否かを指定します。メインテーブルの設定には影響を与えません。
以下のいずれかの値を選択できます。
■ Yes … リンクされたテーブルにキャッシュを使用します。
■ No … リンクされたテーブルにキャッシュを使用しません。
デフォルト値:
[テーブル特性]ダ イアログの「キャッシュ範囲」欄を基に定義されます。ただし 、リンクされたテーブル
の場合、この欄に[位置]が選択されていても意味がありません。したがって、リンクされたテーブルでは、
[なし ]の設定と見なされます。
デフォルト値の設定は以下のようになります。
■ Yes … [テーブル特性]ダ イアログの「データ範囲」欄が[ 位置とデータ]の場合。
■ No … [テーブル特性]ダ イアログの「データ範囲」欄が[ 位置]または[なし ]の場合。
12.4
dbMAGIC キャッシュ
dbMAGIC キャッシュは、以下の修正項目を除き、バージョン 7 と同じです。
照会モード から修正モード に切り替え、再度修正モード から照会モード に切り替えると、画面上にレコード
が再表示されません。
dbMAGIC 7 では、修正モード と照会モード とを切り替えると、dbMAGIC がデータベースにアクセスし 、す
べてのレコード を再度取り出します。しかし 、dbMAGIC 8 では、キャッシュが使用され 、再取り出しは行わ
れません。
ソートでは自動的にソートファイル用のキャッシュが作成されます。
登録モード に切り替えたとき、または位置付、範囲またはソートのいずれかの操作に切り替えたときには、
キャッシュが解放されます。
バージョン 8 では、キャッシュの機能が拡張されています。dbMAGIC が取り出すレコード すべてをキャッシ
ングできるため、キャッシュにはレコード の制限は存在しません。
開発者は、
「テーブル特性」にキャッシュ範囲のみを指定することができます。また、
[タスク制御]にキャッ
シュ範囲を指定することができます。
dbMAGIC 7 からのリポジト リ入力
「 リポジトリ入力」を使用して dbMAGIC 7 から dbMAGIC 8 に移行するときには、以下のようにキャッシュ
範囲の値を変換します。
[テーブル特性]の[キャッシュ範囲]欄
dbMAGIC 7 でキャッシュサイズが指定されている場合、
[ 位置とデータ]に変換されます。
dbMAGIC 7 でキャッシュサイズが指定されていない場合、
[なし ]に変換されます。
「タスク制御」のキャッシュ範囲欄
メインテーブルの[テーブル特性]ダ イアログにある[キャッシュ範囲]欄をもとに設定されます。
12–4 キャッシュ
新機能ガ イド
dbMAGIC Ver.8.2
[ DB テーブル ]の[キャッシュ]欄
dbMAGIC7 で「キャッシュ」欄が「 No 」と設定されている場合、
「 No 」のままです。
dbMAGIC7 で「キャッシュ」欄が「 Yes 」と設定されている場合、または式を指定した場合、
[テーブル特性]
12
ダ イアログの「キャッシュ範囲」欄の設定をもとに設定されます。
dbMAGIC 7 の動作環境の「最大キャッシュサイズ」欄は、dbMAGIC 8 では削除されています。
新機能ガ イド
dbMAGIC Ver.8.2
12.4 dbMAGIC キャッシュ 12–5
12–6 キャッシュ
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 13 章 リンクジョイン
13.1 ジョイン
13–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 13 章 リンクジョイン
リンクジョインの目的は 、メインテーブルとリンクされたテーブルとの間に多対 1 または 1 対 1 のデータ
ビュー関係を設定することにあります。これは 、使用する RDBMS によって実現されます。この操作では、
使用するテーブルを対象とした SQL 内部ジョインの構文が生成されます。
結合リンク (Join) と外部結合リンク (Left Outer Join) は 、メインテーブルとリンクされたテーブルとの間に
多対 1 の関係を設定します。結合リンクは、別のデータベースからメインテーブルとリンクされたテーブル
との接続を設定します。外部結合リンクは、同じデータベースのメインテーブルとリンクされたテーブルの
接続を設定します。
13.1
ジョイン
結合リンク
リンクコマンドでの結合リンクは、タスクの「読み取り」モード において RDBMS のジョイン機能を使用す
るための手法です。レコード の更新時または dbMAGIC の再計算が行われるときには、結合リンクは、確認
リンクと同様の動作をします。
外部結合リンク
リンクコマンド に外部結合リンクのモードがサポートされました、これは、メインテーブルと結合テーブル
の両方が同じデータベースの SQL テーブルの場合に使用できます。また、メインテーブルと結合テーブル
は、多対1の関係にならなければなりません。結合テーブル内にメインテーブルと関連するレコードが1つ
または、1つもない状態が必要です。外部結合リンクは、メインテーブルのレコードと関連のある、結合テー
ブルのレコード を結合します。もし 、関連するレコードがない場合は、NULL を設定します。関連するテー
ブルがあれば 、TRUE を返します。ない場合は、 FALSE を返します。
リンクジョイン用パラメータ
リンクコマンド におけるジョインのためのパラメータは 、以下のとおりです。
パラメータ
意味
リンクモード
J=結合または、O=外部結合を設定します。
テーブル番号
この欄からズームすると 、メインテーブルと同じデータベースで作成されているテーブ
ルの選択リストが表示されます。
インデックス
このテーブルに使用するインデックス。メインテーブルとリンクされたテーブル間で、あ
るいは多対 1 の関係間で使用されるのは重複不可インデックスのみです。重複不可イン
デックスの選択リストを表示するには、
[ インデックス]欄からズームします。
方向
戻り値
使用しません。
リンクに成功したかど うかを示す戻り値を受け取る項目。結合リンクにおいて結合構文
が発行された場合、必ず「 True 」が返されます。リンクされたレコードが見つからない場
合には、メインテーブルとのリンクに成功したレコード のみ利用できます。
13–2
リンクジョイン
新機能ガ イド
dbMAGIC Ver.8.2
リンクジョインの使用方法
1. ジョインされたテーブルのインデックスセグ メントのすべてに位置付小大を設定しなくてはなりません。
2. ジョインされたテーブルの場合、正確な範囲が必要です。したがって、位置付の小と大は一致していな
くてはなりません。
3. ジョインされたテーブルの位置付に設定する式は、以下の特に定義する必要があります。
■ 定数
■ タスクで使用するメインテーブルのカラムのシンボル名
■ タスクで既に定義されているジョインテーブルのカラムのシンボル名
■ 単項式
ジョインの動作
タスクにデータビューを作成するときには、ジョインテーブルのすべてに結合構文を生成します。まず、定
数とメインテーブルとジョインテーブルのカラム名の一致する句で構成された WHERE 句を作成します。次
に、データビューの残りの部分を構築します。
ロック
レコード ロックが必要な場合、元になる RDBMS 内にロックを生成します。
論理ロックを使用する SQL ゲートウェイの場合、論理ロックは、メインテーブルとジョインテーブルで同時
に行われます。
物理ロックを使用する SQL ゲートウェイの場合、SQL ゲートウェイが 、RDBMS でジョインテーブルに対
する SELECT 構文に FOR UPDATE 句を利用できるかど うかをチェックします。
・ Oracle のような RDBMS でジョインテーブルに対する SELECT 構文に FOR UPDATE 句を使用できる
場合、ロックはメインテーブルとジョインテーブルに対して同時に行われます。
タスクで、ジョインテーブルが読み取りモード でアクセスしているときには、メインテーブルだけをロック
しようとし 、ジョインテーブルをロックしようとはしません。
データベースを更新しなくてはならない場合には、そのテーブルの位置インデックスに従って、個別に各ジョ
インされたテーブルを更新します。
使用方法について
1. リンクジョインは、SQL データベースに対してのみ有効です。同一データベースのテーブルのみジョ
インできます。
2. リンクジョインは以下の点において照会リンクとは異なります。
・ リンク照会では、各リンクされたレコード を取り出すのに SELECT 構文が発行されます。リンク
されたレコードが見つからない場合でも、メインテーブルのレコードを利用することができます。
・ リンクジョインでは、等価結合の SELECT 構文が メインテーブルとジョインテーブルに使用され
ます。したがって、2 つのテーブルの結合条件が同じでなければなりません。
3. dbMAGIC が複数のテーブルにより SELECT 構文を生成するときには、メインテーブルには A 、最初
のジョインテーブルには B などのような、テーブル名の別名を使用するという点に注意し てください。
4. 以下のような場合には、リンクジョインで使用されるキャッシュは消去されます。
・ リンクジョインのテーブルから取得されたカラムが更新されたとき。
・ 位置付が実行されたとき。
新機能ガ イド
dbMAGIC Ver.8.2
13.1 ジョイン 13–3
13
13–4
リンクジョイン
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 14 章 デフォルト 値
14.1 デフォルト 値 : : : :
14.2 デフォルト 値の指定
14–2
14–2
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 14 章 デフォルト値
14.1
デフォルト値
デフォルト値は、プログラム内で特定の値を明示的に指定しなかったときに項目に代入される値のことです。
dbMAGIC の前バージョンでは、代入されるデフォルト値は、エンジン内で定義されるので、開発者が代入
値を指定できませんでした。dbMAGIC バージョン 8 では、これらの値を指定するための機能が追加されま
した。dbMAGIC は、2 種類のデフォルト値を扱います。
■ タスクの実行時に項目に具体的な値が示された場合にはその値を使用します。項目の代入式を指定し
ない場合には、項目のデフォルト値が使用されます。
■ SQL データベースで定義されたテーブルに対しては 、データベースのデフォルト値が指定できます。
この値は INSERT 構文の使用時にカラムに挿入されますが 、そのカラムは構文の一部として使用する
必要はありません。
デフォルト値は、NULL または実値のいずれかが指定できます。
14.2
デフォルト値の指定
デフォルト値は、以下の場所で指定します。
1. アプ リケーションレベル - [ CTL 特性]ダ イアログ
2. タイプレベル - [タイプ特性]ダ イアログ
3. カラムレベル - [ カラム特性]ダ イアログ
4. 項目レベル - [カラム特性]ダ イアログ
初期デフォルト 値
初期デフォルト値は、各型により異なります。
型
初期デフォルト 値
文字型
空の文字列
数値型
0
日付型
時刻型
1901/01/01
00:00:00
BLOB 型
メモ型
NULL
空の文字列
論理型
False
開発モード の動作
各項目には、2 種類のデフォルトを定義する欄があります。
新しいタイプを作成した場合、あるいはタイプの型を変更した場合、その型のアプ リケーションレベルのデ
フォルト値が 、タイプ特性のデフォルト値にコピーされます。
カラムを作成した場合、あるいはカラムの型またはタイプを変更した場合、その型のアプ リケーションレベ
ルのデフォルト値がカラム特性のデフォルト値にコピーされます。カラムがタイプをベースとしている場合
にはタイプ特性のデフォルト値から取得されます。
14–2 デフォルト値
新機能ガ イド
dbMAGIC Ver.8.2
項目を作成した場合あるいは項目の型またはタイプを変更した場合には、その型のアプリケーションレベル
のデフォルト値が変数特性のデフォルト値にコピーされます。項目がタイプをベースとしている場合にはタ
イプ特性デフォルト値から取得されます。
チェックユーティリティは、カラムまたは項目の型に従って、デフォルト値が有効な値であるかど うかをチェッ
クします。
実行モード の動作
タスクを実行し項目を初期化すると 、各項目は特性に従ってデフォルト値に初期設定されます。
14
ISDEFAULT 関数
項目の値がそのデフォルト値と等しいか否かをチェックするための、新しい関数が追加されました。
構文:
ISDEFAULT(項目のシンボル名)
パラメータ: 項目のシンボル名: 項目リスト内のインデックス値
戻り値:
新機能ガ イド
dbMAGIC Ver.8.2
項目の値がデフォルト値と等しい場合「 True 」、デフォルト値ではない場合「 False 」。
14.2 デフォルト値の指定 14–3
14–4 デフォルト値
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 15 章 ワークグループ開発
15.1
15.2
15.3
15.4
ワークグループ開発オプション
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :15–2
:
MVCS メニュー : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 15–5
チーム開発 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :15–6
バージョン管理マネージャ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 15–10
:
第 15 章 ワークグループ開発
dbMAGIC の新しい「ワークグループ開発」機能は、
「チーム開発」および「バージョン管理」から構成され
ています。チーム開発は、同じアプリケーションで作業を行っている開発者間での一貫性を確保し 、バージョ
ン管理は、アプ リケーションの変更内容を管理します。
15.1
ワークグループ開発オプション
ワークグループ開発オプションは[ CTL 特性]ダ イアログの[ワークグループ開発]タブで指定します。以
下のチーム開発有効、バージョン管理マネージャ有効、デフォルトバージョン管理レベル、MVCS スナップ
ショットファイル、MVCS データベースと MVCS ロックファイルパスが設定できます。
注意
チーム開発有効
■ 有効値: Yes または No
■ デフォルト値: No
バージョン管理マネージャ有効
■ 有効値: Yes または No
■ デフォルト値: No
デフォルト バージョン管理レベル
■ 有効値: 詳細および通常
■ デフォルト : 通常
MVCS スナップショット ファイル
■ MVCS スナップショットファイルを選択するには、この欄からズームします。
MVCS データベース
■ MVCS データベースを選択するには、この欄からズームします。
■ バージョン管理マネージャを有効にした場合、この指定は必須です。
■ アプ リケーション毎にユニークなパスに指定されるようにデータベースを調整してください。
MVCS ロックファイルパス
■ MVCS ロックファイルパスを選択するには、この欄からズームします。
ワークグループ開発オプションは、開発者がスーパーバイザとしての権利を所有し 、現在どのオブジェクト
もチェックアウトされていない場合にのみ修正できます。
15–2 ワークグループ 開発
新機能ガ イド
dbMAGIC Ver.8.2
オブジェクト
アプ リケーションを操作するための基本単位がオブジェクトです。すべてのバージョン管理操作はオブジェ
クト単位で行われます。アプリケーションオブジェクトのすべてのリストおよび個々のオブジェクトは、以
下のようにメモリーにロード されます。
■ タイプ
… 必要なときにロード されます
■ テーブル
… アプ リケーションオープン中にロード されます
■ プログラム … アプ リケーションオープン中にロード されます
■ ヘルプ
… アプ リケーションオープン中にロード されます
■ 使用権利
… アプ リケーションオープン中にロード されます
■ イベント
… 必要に応じて開発中および開発の初期設定時にロード されます
■ メニュー
… 必要に応じて開発中および開発の初期設定時にロード されます
■ CTL 特性
… アプ リケーションオープン中にロード されます
■ プログラム … 特定のプログラムをズームすると 、ロード されます
チェックアウト /チェックイン機能
「ワークグループ開発」システムでは、すべての dbMAGIC リポジトリとプログラムでチェックアウト /チェッ
クイン機能を使用できます。dbMAGIC リポジトリはリポジト リで単位チェックアウトしなくてはなりませ
ん。ただしプログラムは個別にチェックアウトできます。
MVCS プルダウン メニューでは、以下のコマンドを使用できます。
■ チェックアウト
■ チェックイン
■ チェックアウト一覧
■ アンチェック
チェックアウト
チェックアウトしたオブジェクトは、編集を行うことができます。オブジェクトをチェックアウトしない場合
には、読み取りアクセスしか行うことができません。
dbMAGIC リポジトリをチェックアウトすると、そのオブジェクトが他の開発者に対し自動的にロックされま
す。他の開発者は、そのリポジトリの最後に更新された内容を読み取り専用としてアクセスできます。
オブジェクトをチェックアウトすると、修正内容がスナップショットと呼ばれる一時ファイルに書き込まれま
す。スナップショットファイルには、同じ MCF で作業を行っているすべての開発者がアクセスできます。
バージョン管理マネージャは、オブジェクトの最後のスナップショットファイルでバーション管理を行います。
プログラムを削除するときには、あらかじめチェックアウトしておかなくてはなりません。削除操作により
プログラム内で自動的にチェックが行われ 、マイナーレビジョンが作成されます。
チェックイン
チェックインしたすべてのオブジェクトに対して、自動的にマイナーレビジョンが作成されます。
オブジェクトに対して行なった一時的な修正内容は、スナップショットファイルに保存され 、オブジェクト
をチェックインしたときにコントロールファイルを更新します。
他の開発者がオブジェクトを参照したり実行したりしているときには、開発者はそのオブジェクトをチェッ
クインすることができません。
新しいプログラムを作成すると、チェックインダ イアログで「 OK 」を押すと、このプログラムは、自動的に
チェックアウトされます。したがって、開発者はすべて、更新済みの[プログラム]リポジトリを参照する
ことができます。
新機能ガ イド
dbMAGIC Ver.8.2
15.1 ワークグループ開発オプション 15–3
15
チェックアウト 一覧
チェックアウト一覧には、チェックアウトされているオブジェクトの一覧が表示されます。
図 15.1: チェックアウト 一覧
■ オブジェクト 名
… チェックアウトされたアプ リケーションのオブジェクトの名前
■ ユーザ ID
… オブジェクトをチェックアウトしたユーザのユーザ ID
■ チェックアウト 日時 … オブジェクトをチェックアウトした日付と時刻
カラムにしたがってチェックアウト一覧をソートするには、カラムヘッダのどれか 1 つをクリックします。
■ 再表示 … チェックアウト一覧の内容を最新の情報に更新します。
■ ユーザ … 有効なユーザの一覧を表示するときには、
[ユーザ]をクリックします。この一覧から特定の
ユーザを選択すると 、そのユーザに関連する情報のみを表示することができます。
■ OK
… [オブジェクト一覧]を終了するときには、
「 OK 」をクリックします。
アンチェック
開発者は、チェックアウトされているすべてのオブジェクトをアンチェックすることができます。アンチェッ
クすると、オブジェクトに対して行われている修正が取り消され 、チェックアウト状態が解除されます。
15–4 ワークグループ 開発
新機能ガ イド
dbMAGIC Ver.8.2
MVCS メニュー
15.2
15
図 15.2: MVCS プルダウンメニュー
メニュー名
目的
チェックアウト
選択したオブジェクトをチェックアウトします。オブジェクトが現在チェック
アウトされていないときだけ有効です。
チェックイン
選択したオブジェクトをチェックインします。同じ開発者が現在オブジェクト
をチェックアウトしているときだけ有効です。オブジェクトに対して現在行
なっている修正のすべてが保存され 、他の開発者は修正されたオブジェクト
を参照することができます。
チェックアウト一覧
現在チェックアウトされているオブジェクトの一覧を表示します。
再同期
オブジェクト間で同期を取ります。
アンチェック
現在のオブジェクトのチェックアウトを解除し 、チェックアウト後にオブジェ
クトに対し行われたすべての修正を取り消します。
メジャーレビジョン表示
バージン管理マネージャを実行し 、アプリケーションに存在するメジャーレビ
ジョンを表示します。
変更区分表示
「バージョン管理マネージャ」を実行し 、アプリケーションの「変更」カテゴ
リを表示します。
マイナーレビジョン表示
バージョン管理マネージャを実行し 、アプリケーションに存在するマイナーレ
ビジョンを表示します。
メジャーレビジョン作成
バージョン管理マネージャを実行し 、アプリケーションに新しいメジャーレビ
ジョンを定義します。
変更区分作成
バージョン管理マネージャを実行し 、アプリケーションに新しい変更区分を定
義します。
新機能ガ イド
dbMAGIC Ver.8.2
15.2 MVCS メニュー 15–5
メニュー名
目的
プログラムロールバック
バージョン管理マネージャを実行し 、プログラムを以前のバージョンに戻しま
す。バージョン管理マネージャの実行終了後も、プログラムはチェックアウト
されたままです。
プログラム復旧
バージョン管理マネージャを実行し 、削除されたプログラムを復旧します。復
旧するプログラムを選択すると、
[プログラム]リポジトリに新しい行が作成
されます。復旧後も、そのプログラムはチェックアウトされたままです。
CTL ロールバック
バージョン管理マネージャを実行し 、現在の変更区分カテゴ リに対し 行われ
たすべての変更内容の一覧を表示します。その後で、CTL を特定の変更区分
に戻すことができます。新しい CTL がそれに基づいて作成されます。
15.3
チーム開発
「チーム開発」は、開発者間で一貫性を確保するのに役立つ機能で、以前の dbMAGIC バージョンの「並行
開発」の代わりに新たに加わりました。
最高 128 人の開発者からなるグループが 、
「チーム開発」機能を使用して、1 つの CTL ファイルで作業を行
なうことができます。
チーム開発機能が 、開発者間でアプリケーションのロックを保持し 、同期をとることにより、アプリケーショ
ンの同時進行を確保します。
チーム開発の動作条件
■ アプリケーションにアクセスするワークグループ内の各開発者には、ユニークなユーザ ID が必要です。
■ システムは、マルチユーザアクセスが可能となる様に設定する必要があります。
■ 実行時 dbMAGIC により実行されているアプ リケーションは、開発を行なうことはできません。
チーム開発有効
■ 図 15.3 に示す[ CTL 特性]ダ イアログの[ワークグループ開発]タブの[チーム開発有効]欄を「 Yes 」
に設定します。
15–6 ワークグループ 開発
新機能ガ イド
dbMAGIC Ver.8.2
15
図 15.3: [ CTL 特性]の[ワークグループ 開発]タブ
スナップショット ファイル
dbMAGIC アプリケーションで修正を行なう前に、オブジェクトをチェックアウトしておかなくてはなりませ
ん。この規則に対する例外として、
[プログラム]リポジト リオブジェクトがあります。このオブジェクト
は、以下のような場合には自動的にチェックインまたはチェックアウトされます。
開発者
ワークグループシステム
新規プログラム作成
[プログラム]リポジトリからチェックアウトします
新規プログラム作成と、そのプログラムをチェックアウト
[プログラム]リポジトリにチェックインします
既存プログラムの削除
[プログラム]リポジトリからチェックアウトします
プログラムの削除
[プログラム]リポジトリにチェックインします
プ ログ ラムからのチェック
プログラムからチェックアウトします
アウト
プログラムの取消
[プログラム]リポジトリからチェックアウトします
プログラムを作成します
チェックインダ イアログで「取消し 」をクリック
プログラムの登録を取り消します
[プログラム]リポジトリにチェックインします
削除したプログラムの復旧
[プログラム]リポジトリからチェックアウトします
プログラムを復旧し 、そのプログラムをチェックアウト
[プログラム]リポジトリにチェックインします
プログラムリポジトリ全体
[プログラム]リポジトリからチェックアウトします
に対する使用権利の変更
使用権利の修正
[プログラム]リポジトリにチェックインします
オブジェクトをチェックアウトすると、そのオブジェクトをチェックインするまで 、すべての変更内容を保
持する一時ファイルに修正内容が書き込まれます。この一時ファイルにより、他の開発者は並行して開発を
新機能ガ イド
dbMAGIC Ver.8.2
15.3 チーム開発 15–7
続けることができます。
一時的な修正内容を格納するファイルは、スナップショットファイルと呼ばれます。スナップショットファイ
ル名は、
[ CTL 特性]ダ イアログで指定できます。スナップショットファイル名を指定しないと、xxSNP.MCF
というデフォルトのファイル名にて作成されます。この場合、xx はアプ リケーションの識別子を表します。
並行開発処理
開発者間における並行開発処理は、アプリケーション上に一時ロックまたは埋め込みロックを設定すること
により確保されます。埋め込みロックは、CTL ファイルそのものに置かれ、オブジェクトがチェックアウトさ
れていることを管理します。一時ロックは、アプ リケーション上の活動を示すために付加され 、ロックファ
イルによって動作します。
ロックファイル
アプ リケーションロックファイルは 、xxMVCS.LOC という名前で 、
[ CTL 特性]ダ イアログの[ ワークグ
ループ 開発]タブ 内の MVCS ロックファイルパス欄で指定したデ ィレクトリ内に作成されます。この場合、
xx はアプ リケーションの識別子を表し ます。この欄を空白のままにしておくと、ファイルは現在の作業用
ディレクトリに作成されます。
[チーム開発使用]を「 Yes 」に設定すると、ロックが開発中だけ実行されま
す。以下の表に、発行されるロックを定義します。
オブジェクト
アクション
タイプ リポジトリ
チェックアウトせず、リポジトリを照会。
共有
チェックアウトして、リポジトリを照会。
排他
チェックイン
排他
テーブル、カラムまたはインデックスを照会。
共有
特性を参照
共有
テーブルの APG
共有
チェックイン
排他
[プログラム]リポジトリ
自動チェックイン
排他
プログラムリポジトリ
プログラムを参照
共有
プログラム実行
共有
チェックイン
排他
ヘルプを参照
共有
チェックイン
排他
チェックアウトせず、リポジトリを照会。
共有
チェックアウトして、リポジトリを照会。
排他
チェックイン
排他
チェックアウトせず、リポジトリを照会。
共有
チェックアウトして、リポジトリを照会。
排他
チェックイン
排他
CTL イベント
チェックイン
排他
CTL 特性
チェックイン
排他
テーブルリポジトリ
ヘルプ リポジトリ
使用権利
メニューリポジトリ
15–8 ワークグループ 開発
ロック
新機能ガ イド
dbMAGIC Ver.8.2
注意:
共有モード でオブジェクトをロックした場合には、ロックされているオブジェクトに排他的にアクセス
しなくてはならないすべてのアクションがロックされます。
同期プロセス
「チーム開発」で最も重要な要素が 、開発者間における作業の同期化です。同期プロセスは、次の 2 つの要
素に分かれています。
■ アプ リケーションに対して変更が行われたかど うか、およびその変更が何かに影響を与えるかど うか
を検出する。
■ 各ユーザの開発環境に対する変更を同期化する。
15
修正の検出
修正を検出できるように、オブジェクトの現在のレビジョンを判断するためのカウンタがあります。このカ
ウンタのコピーがステーションロックファイルに置かれ 、オブジェクトをチェックインすると 、ステーショ
ンロックファイル内でそのオブジェクトのカウンタが増分されます。
同期イベントが発生すると、内部カウンタとステーションロックファイル内のカウンタとを比較します。
修正の同期化
チーム開発機能において修正が行われていることを確認すると、同期プロセスが開始されます。このプロセ
スでは、修正済みオブジェクトが開発環境へ読み込まれます。
読み込み後、バージョン管理オブジェクトに関係のある、開いているウィンドウすべてが更新されたオブジェ
クトと共に再表示されます。他のユーザによって削除された項目上にカーソルが置かれていた場合には再表
示時、カーソルはオブジェクトのリポジトリの上辺に置かれます。この時に変更を示すメッセージが表示さ
れます。
同期のタイミング
以下の表は、同期イベントのタイミングを表しています。
オブジェクト
アクション
タイプ
[タイプ ]リポジトリにアクセスした時
[タイプ一覧]を表示した時
テーブル
[テーブル ]リポジトリにアクセスした時
[テーブル一覧]を表示した時
[ カラム]テーブルにズームした時
[ インデックス]テーブルにズームした時
プログラム
[プログラム]リポジトリにアクセスした時
[プログラム一覧]を表示した時
プログラムを実行した時
プログラムを編集または照会した時
ヘルプ
[ヘルプ ]リポジトリにアクセスした時
[ヘルプ一覧]を表示した時
ヘルプを編集または照会した時
メニュー
[ メニュー]リポジトリにアクセスした時
CTL イベント
[ CTL イベント ]リポジトリにアクセスした時
CTL 特性
[ CTL 特性]ダ イアログにアクセスした時
新機能ガ イド
dbMAGIC Ver.8.2
15.3 チーム開発 15–9
アプリケーションアクセスモード と「共有」モード
以下の表に、アプ リケーションファイルにアクセスする場合のアクセスモード と共有モード を示します。
開発/実行
チーム開発使用
アクセス
開発
Yes
書込
書込
開発
No
なし
書込
なし
読込
読込
実行
共有
ステーションロックファイル
アプ リケーションステーションロックは、xxSTTION.LOC という名前で、
[ CTL 特性]ダ イアログの[ワー
クグループ開発]タブにある MVCS ロックファイルパス欄で指定したディレクトリに作成されます。この場
合、xx はアプ リケーション識別子を表します。この欄を空白のままにしておくと、ファイルは現在の作業用
デ ィレクトリに作成されます。
アプ リケーションを開くときには、ユーザ ID をステーションロックファイルに入力します。同じユーザ ID
を使用している他のユーザは 、そのアプ リケーションを開くことはできません。同じユーザ ID を使用して
アプ リケーションの 2 つのインスタンスを開くこともできません。アプリケーションオープン時にログオン
していない場合には、MVCS が有効です。ユーザがログオンしないと 、アプリケーションを開くことができ
ませんというメッセージが表示されます。
ステーションロックファイルは、アプリケーションに最初にログオンしたときに作成され 、最後にログオフ
した後で削除されます。
15.4
バージョン管理マネージャ
dbMAGIC「バージョン管理」システムは、dbMAGIC アプリケーションに対する修正のすべての履歴を保持
します。アプ リケーションの各レビジョンがデータベースに保存され 、後で参照することができます。
バージョン管理データベース構造
バージョン管理マネージャは、以下の階層構造に従ってアプ リケーションに対する修正履歴を管理します。
■ メジャーレビジョン
■ 変更区分
■ マイナーレビジョン
メジャーレビジョン
最初のメジャーレビジョンを有効化したときに設定されます。
各メジャーレビジョンに対するバージョン以下の情報が 、管理データベースに保存されます。
15–10 ワークグループ 開発
新機能ガ イド
dbMAGIC Ver.8.2
15
図 15.4: メジャーレビジョンダイアログ
メジャーレビジョンの欄
内容
メジャーレビジョン名
開発者は、メジャーレビジョンごとに名前を入力します。
更新日
更新日は、各メジャーレビジョンごとに自動的に入力されます。
ユーザ ID
ユーザ ID は、メジャーレビジョンを作成した時のログオン名が 、自動的に入
力されます。
ユーザコメント
開発者はメジャーレビジョンごとにコメントを入力します。
変更区分
変更区分では、レビジョンを分かりやすく管理するために、区分によってメジャーレビジョンをグループ 化
することができます。
図 15.5: 変更区分ダイアログ
新機能ガ イド
dbMAGIC Ver.8.2
15.4 バージョン管理マネージャ 15–11
以下の情報は、各変更区分ごとにバージョン管理データベースに保存されます。
変更区分の欄
内容
変更区分 ID
変更区分ごとに番号が自動的に入力されます。
変更区分名
開発者は変更区分ごとに名前を入力します。
メジャーレビジョン名
変更区分が属するメジャーレビジョンを表示します。
コメント
開発者は変更区分ごとにコメントを入力できます。
マイナーレビジョン
マイナーレビジョンは、チェックインした各オブジェクトごとにバージョン管理データベースに自動的に作
成されます。
図 15.6: [マイナーレビジョン ]ダイアログ
マイナーレビジョンの欄
内容
変更リポジトリ
各マイナーレビジョンによって更新されたリポジトリを表示します。
ユーザ ID
オブジェクトを更新した開発者のログオン名が自動的に入力されます。
更新日
オブジェクトを更新した日付と時刻が自動的に入力されます。
変更区分
初めてオブジェクトを更新した場合には「 Create 」、既存のオブジェクトを更
新した場合には「 Update 」が表示されます。
メジャーレビジョン
選択したマイナーレビジョンの属するメジャーレビジョンが表示されます。
マイナーレビジョン
選択したマイナーレビジョンの番号が表示されます。
変更区分 ID
選択したマイナーレビジョンの属する変更区分の番号が表示されます。
変更区分名
選択したマイナーレビジョンの属する変更区分の名前が表示されます。
ユーザコメント
開発者が 、オブジェクトにチェックインしたときにコメントを入力できます。
15–12 ワークグループ 開発
新機能ガ イド
dbMAGIC Ver.8.2
レビジョン詳細ダイアログ
レビジョン詳細ダ イアログには、選択したマイナーレビジョンに関する詳細が表示されます。開発者は、マ
イナーレビジョンダ イアログで[ 詳細]ボタンを押下すると、レビジョン詳細ダ イアログにアクセスできま
す。マイナーレビジョンに関する詳細は、階層構造パス内に組み込まれています。開発者は、最初のレビジョ
ン詳細レベルから次のレベルへズームすることができます。マイナーレビジョンの詳細は、次の 3 つのカテ
ゴ リに分類されています。
■ タイプレビジョン
■ プログラムレビジョン
■ テーブルレビジョン
タイプレビジョン
タイプレビジョンは、
[タイプ ]リポジトリに対する更新です。
15
プログラムレビジョン
プログラムレビジョンは 、関連するすべてのタスク環境およびタスク特性ダ イアログを含む[プログラム]
リポジトリのタスクに対する更新です。
テーブルレビジョン
テーブルレビジョンは、カラムとインデックスおよびテーブル特性ダ イアログを含む[テーブル ]リポジト
リに対する更新です。
図 15.7: レビジョン詳細ダイアログ
プログラムレビジョンに対する以下の情報が 、バージョン管理データベースに入力されます。
レビジョン詳細ダイアログ
内容
タスク番号
修正されたタスクの番号が表示されます。
タスク名
修正されたタスクの名前が表示されます。
変更区分
初めてオブジェクトを更新した場合には「 Create 」、既存のオブジェクトを
更新した場合には「 Update 」が表示されます。
要素名
更新されたタスクの要素を表示します。
変更内容
更新されたタスクの内容を表示します。
新機能ガ イド
dbMAGIC Ver.8.2
15.4 バージョン管理マネージャ 15–13
[オブジェクト 履歴]ダイアログ
[オブジェクト履歴]ダ イアログには、選択したオブジェクトの履歴が表示されます。
[レビジョン詳細]ダ
イアログで[ 履歴]ボタンを押下して、
[オブジェクト履歴]ダ イアログにアクセスします。
図 15.8: [オブジェクト 履歴]ダイアログ
[オブジェクト 履歴]欄
内容
マイナーレビジョン
マイナーレビジョンの順序に従って自動的に作成されます。
更新日時
オブジェクトを更新した日付と時刻。
更新区分
初めてオブジェクトを更新した場合には「 Create 」、既存のオブジェクトを更
新した場合は「 Update 」が表示されます。
変更区分名
選択したマイナーレビジョンの属する変更区分の名前が表示されます。
ユーザコメント
マイナーレビジョンのコメントが表示されます。
要素名
オブジェクト内で更新された要素の名前を表示します。
変更内容
更新された要素の変更内容を表示します。
[バージョン管理マネージャ]ツールバー
[バージョン管理マネージャ]は、MVCS メニューを選択して実行します。
「バージョン管理マネージャ」の
実行時には、
[バージョン管理マネージャ]ツールバーを使用できます。また、メジャーレビジョンおよび 、
変更区分を作成するだけでなく、メジャーレビジョン 、変更区分およびマイナーレビジョンを表示できます。
図 15.9: [バージョン管理マネージャ ]ツールバー
バージョン管理マネージャを終了するときには、ファイルメニューからバージョン管理マネージャクローズ
を選択します。
15–14 ワークグループ 開発
新機能ガ イド
dbMAGIC Ver.8.2
[ メジャーレビジョン作成]ダイアログ
最初のメジャーレビジョンが作成された後は、MVCS メニューからメジャーレビジョン作成を選択すること
で、
[ メジャーレビジョン作成]ダ イアログにアクセスし 、以後のメジャーレビジョンを作成します。
15
図 15.10: [ メジャーレビジョン作成]ダイアログ
[ 変更区分作成]ダイアログ
[ 変更区分作成]ダ イアログを開いて、現在のメジャーレビジョンの新しい変更区分を作成するときには 、
MVCS メニューから変更区分作成を選択します。
図 15.11: [ 変更区分作成]ダイアログ
ロールバック
「バージョン管理マネージャ」では、アプ リケーション単位またはプログラム開発単位で以前の段階に戻す
ことができます。
「バージョン管理マネージャ」では、以下の 3 種類のロールバックが可能です。
■ アプ リケーションロールバック
■ プログラム復旧
■ プログラムロールバック
アプリケーションロールバック
アプ リケーションロールバックは、CTL ファイルに対して、指定したマイナーレビジョンに至るまでの更新
すべてを取り消します。アプ リケーションロールバックでは、以前の段階の CTL ファイルを作成しますが 、
現在の CTL ファイルと置き換わりません。このため、アプ リケーションロールバックは、ロールバックした
CTL の保存先を入力する必要があります。また、データベースには、レビジョンが作成されません。
プログラム復旧
選択したプログラムの削除を取り消します。
新機能ガ イド
dbMAGIC Ver.8.2
15.4 バージョン管理マネージャ 15–15
プログラムロールバック
プログラムロールバックは、選択されたプログラムに対して指定したマイナーレビジョンに至るまでの更新
すべてを取り消します。ただし 、プログラムロールバック後には、アプリケーションの完全性は保証されな
いという点に注意してください。
注意:
プログラムロールバックでは、CTL ファイルを排他的にアクセスしなくてはなりません。CTL ファイル
を別の開発者がオープンしていると 、ロールバックに失敗します。
ワークグループ開発と権利
ワークグループ 開発では、次の権利を参照します。
■ メジャーレビジョン作成権利
■ 修正権利
■ 照会権利
■ 削除権利
■ APG 権利
メジャーレビジョン作成権利
[ CTL特性]ダ イアログの[ 強制 MVCS 設定キー]欄に設定された権利キーを保有している開発者のみ
が 、新しいメジャーレビジョンを作成できます。
修正権利
該当するオブジェクトの修正権利を所有している開発者は、コマンドでチェックアウト /チェックインできます。
照会権利
照会権利を所有している開発者は、マイナーレビジョンの詳細を表示できます。
15–16 ワークグループ 開発
新機能ガ イド
dbMAGIC Ver.8.2
章目次
第 16 章 ヨーロッパ通貨と西暦 2000 年問題 (Y2K)
対応)
16.1 ヨーロッパ通貨の設定 : : : : : : : : : : : : :
16.2 関数 : : : : : : : : : : : : : : : : : : : : : :
16.3 西暦 2000 年問題対応のためのデフォルト 変更
16–2
16–3
: 16–5
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :
第 16 章 ヨーロッパ通貨と西暦 2000 年問題 (Y2K)
対応)
dbMAGIC バージョン 8 の新機能の1つに、ヨーロッパ通貨に対応しました。ヨーロッパ通貨対応として開発
者に環境や特性の設定または、通貨変換テーブルに通貨を付加したり、修正または削除する機能を提供しま
す。通貨変換テーブルは ”EURO”(ヨーロッパ統一通貨) を基準とする通貨値を記述している外部 ASCII ファ
イルです。更にさらに、MAGIC で西暦 2000 年問題の対応を容易にするために、いくつかデフォルト設定が
変更されました。
16.1
ヨーロッパ通貨の設定
通貨変換ファイル
ヨーロッパ通貨変換テーブルのファイルは「 設定/動作環境」ダ イアログの「 外部参照ファイル 」タブ また
は、
「CTL特性」特性ダ イアログの「外部参照ファイル」タブの「通貨変換ファイル」欄に場所と名前指定
します。通貨変換テーブルに通貨を付加したり、修正または削除する機能を提供します。通貨変換テーブル
は ”EURO”(ヨーロッパ統一通貨) を基準とする通貨値を記述している外部 ASCII ファイルです。
図 16.1: 動作環境 - 通貨変換ファイル
基準通貨
[動作環境]ダ イアログで定義されたものとは別の通貨変換ファイルを定義する場合には、
「CTL特性」ダ
イアログの「外部参照ファイル」タブの「通貨変換ファイル」欄に指定します。この欄は、マルチアプリケー
ション環境で、アプ リケーションごとに通貨変換ファイルを作成したいときに使います。この欄でズームす
ると、ファイルを開くダ イアログが表示されますのでファイルを選択してください。デフォルトの基準通貨
は ”EURO”となります。
16–2 ヨーロッパ通貨と西暦 2000 年問題 (Y2K) 対応)
新機能ガ イド
dbMAGIC Ver.8.2
図 16.2: CTL特性 - 通貨変換ファイル
16
コント ロール特性の表示通貨
通貨変換テーブルから通貨の値をアクセスできるように指定できます。
「コントロール特性」の「入力」タブ
の「表示通貨」欄でズームすると通貨一覧が表示され選択できます。この欄はエデ ィットコントロールでの
み有効です。
図 16.3: コント ロール特性 - 表示通貨
関数
16.2
dbMAGIC バージョン 8 には、ヨーロッパ通貨で使用できる以下の関数が追加されました。
EUROCNV 通貨変換
通貨変換テーブルに登録された基準通貨(ユーロ)への変換率に基づく、通貨間の変換結果を返す。
構文:
EUROCNV(変換元, 変換先, 金額)
パラメータ: 変換元
… 変換元となる通貨( 文字型)
変換先 … 変換後の通貨( 文字型)
金額
新機能ガ イド
dbMAGIC Ver.8.2
… 変換元の通貨単位で示される変換対象となる金額( 数値型)
16.2 関数 16–3
戻り値:
変換後の通貨単位で示される数値
例:
EUROCNV( ’ITL’,’DEM’,A ) A 値をイタリアリラからド イツマルクに変換しま
す。
EUROCNV( ’ITL’,’EURO’,50*B ) B 値を 50 倍し 、イタリアリラからユーロに変
換します。
EUROCNV( A,B,C ) C 値を通貨 A から通貨 B の値に変換します。注意事項:
1. パラメータ( 通貨コード )は4桁固定長で使用してください。
2. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プ
ログラム終了時にはもとの設定値に戻ります。設定値を保存する場合は、通貨
変換ファイルをエデ ィタ等で編集してください。
3. 通貨変換ファイルは、1ユーロに対する比率で設定します。
EURODEL 通貨削除
通貨変換テーブル (ECCT) から、通貨コード を削除する。
構文:
EURODEL(通貨コード )
パラメータ: 通貨コード
… 通貨変換テーブル( ECCT )に登録されている通貨コード。
戻り値:
数値
0 … 指定された通貨コード の削除が成功した場合に返されます。
1 … 指定した通貨コードが存在しない場合に返されます。
5 … 指定した通貨コードが ”EURO”の場合に返されます。
9 … 通貨コードが設定されたいない場合に返されます。
例:
EURODEL(‘FRF’) ECCT からフランスフランの通貨データを削除します。
1. パラメータ( 通貨コード )は4桁固定長で使用してください。
2. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プログラム終了
時にはもとの設定値に戻ります。設定値を保存する場合は 、通貨変換ファイルをエディタ等
で編集してください。
EUROGET 基準通貨の取得
実行時に基準通貨コード を取得する。
構文:
EUROGET()
パラメータ: なし
戻り値:
基準通貨コード
例:
EUROGET() は、基準通貨特性の初期設定値としては EURO を返します。
16–4 ヨーロッパ通貨と西暦 2000 年問題 (Y2K) 対応)
新機能ガ イド
dbMAGIC Ver.8.2
EUROSET 基準通貨の変更
実行モード 時に基準通貨を変更する
構文:
EUROSET(通貨名)
パラメータ: 通貨コード
… 通貨コード( 文字列)
戻り値:
数値
0 … 基準通貨が正常に変更された場合に返されます。
1 … 指定した通貨コードが存在しない場合に返されます。
例:
EUROSET(‘FRF’) の実行により、基準通貨はフランスフランになる。
注意事項:
1. アプリケーションの基準通貨特性を変更することにより、通貨値として表示されている。デー
タベース値も自動的に修正されます。
2. パラメータ( 通貨コード )は4桁固定長で使用してください。
3. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プログラム終了
時にはもとの設定値に戻ります。設定値を保存する場合は 、通貨変換ファイルをエディタ等
で編集してください。
4. 通貨変換ファイルは、1ユーロに対する比率で設定します。
EUROUPD 通貨変換テーブルの更新
通貨変換テーブルの登録内容を更新する。
構文:
EUROUPD(通貨コード , 通貨名称, 変換精度, 基準変換率)
パラメータ: 通貨コード
… 4 バイト以内の通貨コード
通貨名称
… 20 バイト以内の通貨名称
変換精度
… 変換後の小数点以下の桁数を示す数値で0,1,2で指定。変換結果
は四捨五入。
基準変換率 … 基準通貨1単位に対するその通貨の変換値
戻り値:
数値)
0 … 内容の登録・修正が正常に行われた場合に返されます。
1 … 正常に更新できない場合返されます。
2 … 基準換算率が 0 の場合に返されます。
3 … 通貨コードが ”EURO” で基準換算率が 1 以外の場合に返されます。
4 … 換算精度が 0,1,2 以外の場合に返されます。
9 … 通貨コードが設定されたいない場合に返されます。
10 … 通貨名称が指定されていない場合に返されます。
新機能ガ イド
dbMAGIC Ver.8.2
16.2 関数 16–5
16
注意事項:
1. 指定した通貨コードが存在しないときは、通貨換算テーブルに追加登録されます。
2. パラメータ( 通貨コード )は4桁固定長で使用してください。
3. 通貨の設定値の追加、変更、削除の有効範囲はプログラム稼動中のみです。プログラム終了
時にはもとの設定値に戻ります。設定値を保存する場合は 、通貨変換ファイルをエディタ等
で編集してください。
4. 通貨変換ファイルは、1ユーロに対する比率で設定します。
16.3
西暦 2000 年問題対応のためのデフォルト変更
西暦 2000 年問題対応としてデフォルト設定が変更されました。デフォルト日付は、01/01/01 が 1901/01/1 に
変更になりました。また、既にデフォルト値が 、01/01/01 設定している場合には、2001/01/01 に変換されま
す。ISAM DBMS で日付型文字列のデフォルトの長さは、6 バイト( 西暦年の下 2 桁)から 8 バイト( 4 桁
表示の西暦年)に変更になりました。
図 16.4: 日付型のデフォルト 値
16–6 ヨーロッパ通貨と西暦 2000 年問題 (Y2K) 対応)
新機能ガ イド
dbMAGIC Ver.8.2
16
図 16.5: [ NULL 特性]でのデフォルト 値
新機能ガ イド
dbMAGIC Ver.8.2
16.3 西暦 2000 年問題対応のためのデフォルト変更 16–7
16–8 ヨーロッパ通貨と西暦 2000 年問題 (Y2K) 対応)
新機能ガ イド
dbMAGIC Ver.8.2
dbMAGIC Ver.8.2 新機能ガイド
c 1999,Magic Software Japan K.K.
第1版
発
行
〒 151-0053
1999 年 2 月 5 日
第5版 2000 年 6 月 30 日
東京都渋谷区代々木三丁目二十五番地三号
大東京火災新宿ビル 14 階