2002年4月
マジックソフトウェア・ジャパン 株式会社

 

Magic eBusiness Platform Ver9.20J SP1
追加情報

 Magic eDeveloper
 Magic Application Server
 Magic Client

     
 

このファイルには、Magic eBusiness Platform(以下 Magic と表記)Ver9.20J SP1 について、マニュアルに記載されていない注意点や制限事項など重要な情報が記載されています。

動作環境および注意事項

dbMAGIC Ver8と混在環境での使用について

旧バージョンからのマイグレーション

制限事項および留意事項
 設定
 モデル
 テーブル
 メニュー
 コンポーネント
 プログラム一般
 データアクセス
 ロックとトランザクション
 SQL共通
 関数
 ユーティリティ
 リポジトリ入出力
 フォーム
 HTMLフォーム
 印刷機能
 プレビュー機能
 インターネット機能
 ブラウザクライアント
 ワークグループ開発機能
 サーバ機能
 コマンドラインリクエスタ 

参 考

 文字型書式「位置指示記号」の拡張
 サポートするイメージフォーマット
 制限値
 ボーナスパック
 インタラクティブWebアプリケーションの開発と実行

Ver9.20J SP1の新機能

Ver9.20J SP1の改善内容

 

     
 

動作環境および注意事項 (Top)

SP1、SP2ベータ、SP2、SP2a、SP3ベータ、SP3 からのアップグレード

  • Magicコントロールファイル(MCF.MFF)の互換性がありません。旧バージョンにてリポジトリ出力し、リポジトリ入力を行なう必要があります。コンポーネントを使用している場合、コンポーネント化されているコントロールファイルを先に移行して下さい。事前に旧バージョンの開発環境をバックアップされることをお奨めいたします。(9.20JSP1ベータ のMCFとは互換性があります。)

  • モジュール名の変更

V9.01モジュール名 V9.2モジュール名 備考
mgrqispi9.dll mgrqispi92.dll 設定/動作環境/アプリケーションサーバ/HTTPリクエスタ で設定
mgrqcgi9.exe mgrqcgi92.exe
mgrqnspi9.dll mgrqnspi92.dll HTTPサーバ で設定
mgrqgnrc9.dll mgrqgnrc92.dll  
mgrqhttp9.dll mgrqhttp92.dll  
  • MRBデフォルトポート番号の変更
    デフォルトのポート番号が、3001->3100へ変更になりました。旧ポート番号(3001)でも動作しますが、各種INIファイルの設定を変更することを推奨いたします。

INIファイル 設定 備考
MAGIC.INI 設定/サーバ/サーバアドレス  
MGREQ.INI [REQUESTER_ENV]
MessagingServer = 3100
Magicエンジン、インターネットリクエスタのインストール場所
MGRB.INI [MRB_ENV]
BrokerPort = 3100
 
  • ブラウザクライアントを使用される場合は、必ず設定/動作環境/外部参照ファイルの「ブラウザタスクで使用するエンコード」を設定してください。
  • 本バージョンで提供しているJavaApplet、JavaScript は以下のとおりです。
JavaApplet MGBC920_01J.CAB または MGBC920_01JS.CAB
JavaScript MGBC920_01J.JS

注意:

  • 旧レビジョンをインストールした状態でアップグレードを行った場合は、ライセンスファイルの更新は行われません。Magic Application Server や Magic Client のベータ版ライセンスを使用している場合は、一端ライセンスマネージャでライセンスを削除した後、登録していただく必要があります。(その際、ライセンスサーバを再起動する必要があります。)

  • インターナショナル版のMagicコントロールファイル(MCF、MFF)とは互換性がありません。リポジトリの出入力が必要です。

WindowsNT 4.0 サポート

以下の環境で動作確認しています。

Magic eDeveloper、Magic Client WindowsNT Workstation 4.0 SP6a
Magic Application Server WindowsNT Workstation 4.0 SP6a

WindowsXP Professional サポート

Windows2000の互換機能を使用してMagicが動作することを確認しました。 WindowsXPの新機能に関しては未評価です。Windows2000互換モード、「視覚テーマを無効にする」で使用することを推奨します。

以下の現象を確認しております。

  • 開発時の各リポジトリテーブルにおいて、縦スクロールバーのスライダーをマウスで下方向にドラッグすると、無限ループになることがあります。

HASP

  • USB HASPは、USBハブ経由で接続することができます。USB−パラレル変換ケーブル経由でパラレルHASPを接続することはできません。 

  • WindowsNT4.0では、USB HASPはサポートされていません。

  • WindowsXPでは、HASPデバイスドライバを Ver4.65に変更してください。Magicフォルダ内のUtil\4.65に格納されています。

使用するデータベース固有の追加情報が、下記のファイルに記述されております。

Pervasive.SQL 2000

readme_psql.htm

Memory

readme_mem.htm

Oracle8/Oracle8i

readme_ora8.htm

MSSQL7

readme_ms7.htm

ODBC

readme_odbc.htm

     
 

dbMAGIC Ver8と混在環境での使用について(Top)

dbMAGIC Ver8との混在環境で使用できるようにセットアップ環境が以下のようになります。

  • MGRB.INIのBrokerPort、MGREQ.INIのMessagingServerのデフォルト値が3100に変更されました。

  • リクエスタ関連のモジュール名が以下のように変更されました。

V8モジュール名 V9モジュール名
mgrqispi.dll mgrqispi92.dll
mgrqns20.dll,mgrqns35.dll mgrqnspi92.dll
mgrqcgi.exe mgrqcgi92.exe
mgrqgnrc.dll mgrqgnrc92.dll
mgrqhttp.dll mgrqhttp92.dll

上記の変更に伴い、MAGIC.INI、HTMLファイルを必要に応じて変更してください。
(例:InternetDispatcherPath = /Magic9Scripts/mgrqispi92.dll)

※Ver8 で開発されたインターネットアプリケーションを移行する場合、注意が必要です。リクエスタ関連のモジュール名が以下のように変更されました。 

     
 

旧バージョンからのマイグレーション(Top)

 

dbMAGICバージョン

リポジトリ入力可能な、旧バージョンは、dbMAGIC Ver8のみとなります。それ以前のバージョンは、一度、Ver8へ移行するか、弊社の移行サービスをご利用ください。

 

JAVAフォーム

Javaフォームは、サポートされなくなりました。Ver8のアプリケーションをリポジトリ入力すると、Javaフォームは削除されます。

 

Magicのメニューアイコン

Magic Ver9 はアイコンの新しいセットを提供します。Ver8 の内部アイコンを使用しているアプリケーションの場合、Ver9 では異なるアイコンが表示される場合があります。 外部のアイコンを使うように変更するか、またはメニューに対して新しいアイコンを割り当て直してください。

 

基本色定義ファイルとフォント定義ファイルの変更

Magic Ver9 は、新しい基本色定義ファイルとフォント定義ファイルを提供しています。最初の1〜100番までは、Magic 内部用に割り付けられています。この変更により、旧バージョンからの移行時には、アプリケーションで使用している色とフォントの参照をコンバートする必要があります。
基本色/フォント定義ファイル コンバートユーティリティ(英語)がありますのでご使用ください。 詳細は、インストールガイドを参照してください。

 

イベントハンドラ

Ver8 のタスクイベントは、対応した Magic Ver9 のハンドラの下で、コールコマンドに変換されます。Ver8 の CTL イベントは、メインプログラムのハンドラに変換されます。

 

LEVEL関数

Magic Ver9のLEVEL関数は、Ver8と異なる値を返します。
グループレベルをチェックするとき、LxPまたはLxSの代わりに、関数は"GP_<変数名>" または "GS_<変数名>"の文字列を返します。

 

トランザクションロッキング

移行したアプリケーションのトランザクション・モードは、全て物理トランザクション・モードとなります。

MS-SQL 使用時のデフォルトのロックの動作は、物理ロッキングに変更になっています。 dbMAGIC Ver8 と同等にする場合は、[設定/データベース]の[データベース情報]欄に「SQL_PHYSICAL_LOCKING=N」と設定します。

 

レポートジェネレータ

サポートされなくなりました。

 

バージョン管理機能

現在は、サポートされていません。

 

 

GUI画面のテーブルコントロール

GUI画面のテーブルコントロールの機能が拡張されました。Ver8で作成したテーブルコントロールをVer9 と同じ機能にするには次の変更を行います。

  • コントロール特性/スタイル ・・・ 凸立体 → Windows立体

  • コントロール特性/サイズ変更 ・・・ No → Yes

  • 各カラムのタイトルの変更 ・・・
    1) テキストコントロールの親子リンクを解除してから削除。
    2)Alt+マウスクリックでカラムを選択し、特性のテキストにタイトル名を記述。

リポジトリ入力ログファイル

アプリケーションリポジトリ入力を行なうと、アプリケーションリポジトリ入力ログファイル(XXIMP.LOG)を作成します。
変換エラー等が発生していないか、入力ログで確認してください。

 

Ver8アプリケーションからの移行の強化

 

Ver9.20JSP1ベータ2より、ISAM(Pervasive.SQL)データベースを使用した、dbMAGIC Ver8のアプリケーションの移行を容易に出来るように拡張されました。 詳細は、Ver9.20J SP1 の新機能を参照

 

ブラウザクライアント Ver9.01J SPxからの移行に関して

Ver9.20J SP1では、Ver9.01J SPxに比べて、ブラウザークライアントのパフォーマンス向上、内部チェックの強化改善が図られています。
それに伴い、ブラウザークライアントのアプリケーションをVer9.01J SPxからVer9.20J SP1に移行した場合、一部動作が異なる場合があります。
以下に、MSJにて確認された移行時の障害と対応について記述いたします。
現 象 原 因 対 応
動作が不安定になる。 オンラインタスクのみで有効な関数/アクションを使用していた。(例)KBPUT()、画面再表示アクション等 使用しないようにプログラムを修正する。
一部のプログラムが極端に遅くなる。 @ ビュー再表示アクションをタスク前処理など不要と思われる箇所で多用している。

 

@不要なアクションを減らす。
A 非常に大きな変数を多用している。 A変数サイズの見直しを行う。又は、データコントロールが使用できる場合は、使用するようにする。
テーブルの一部の行が表示されない。 チャンクサイズ ≧ 繰返行数となっていない。 適切なチャンクサイズを設定する。
項目の値が読み込まれない。 タスク前処理で子タスクをコールし親タスク上のレコードレベルのデータ項目を見ていた。 レコードメインへ移動等のプログラム修正を行う。
リストボックス、コンボボックスでラベルを変数で定義し、選択肢を子タスクのバッチで登録している場合、実行時にコントロールの幅が広がる。 (1000431)   空白削除の関数(RTRIM、TRIM)を使用する。
コンボボックスまたはリストボックスのラベルを項目で設定するとき、ラベルの先頭が「,」の場合、ラベルが正しく表示されないことがある。   ラベルの先頭に「,」が付加されないようにプログラムを修正する。
実行画面の見栄え(フォントの種類)が異なる。 子タスクは、親タスクと同一のエンコードを使用するように変更された為。 必要に応じてHTMLファイルの調整を行う。

 

 

     
 

制限事項および留意事項 (Top)

設定(Top)

  • 以下のフォント/基本色定義は、開発、実行環境で異なります。
  実行環境 開発環境
フォント定義 (1)基本テーブル項目 (23)開発基本テーブル項目
(9)基本プッシュボタンフォント (27)開発基本プッシュボタンフォント
基本色定義 (1)基本色 (18)開発基本色
(2)基本項目色(平面) (19)開発基本項目色(平面)
(5)基本項目色(立体) (20)開発基本項目色(立体

 

モデル(Top)

  • モデルリポジトリの項目クラスで、書式等を変更しても、モデルを参照しているカラムのテーブルに対して、即時に物理テーブルの自動変更は行われません。物理テーブルのチェックを行い、変更を促すダイアログが表示されます。その場合、テーブルリポジトリ上で、[オプション/テーブル変換] 又は、Ctrl+O を実行して手動で変更処理を行う必要があります。(1000015)

  • モデルリポジトリでは、取消アクション(F2)が無効です。(1000131)

テーブル(Top)

  • DDF作成するテーブルの[名前]欄およびカラムの[名前]欄を空白にしないで下さい。空白にした場合、Pervasive.SQL のODBCドライバにおいて正しく認識されない場合があります。(1000222)

メニュー(Top)

  • メニューリポジトリでコメントが入力できません。(921187)

コンポーネント(Top)

  • コンポーネントリポジトリに登録されたアプリケーションのメインプログラムのタスク前処理の内容は、アプリケーションの初期時に必ず実行されます。(1000350)
  • 開発環境を移行すると、アプリケーションオープン時に「MAGICインターフェースファイルをオープンできませんでした。」のメッセージが表示され、登録されているはずのコンポーネントが利用できなくなることがあります。(1000356)

発生条件 (1)  論理名の設定ミスなどで、設定済みのコンポーネントファイルが見つからない状況で、コンポーネント特性を開く。
(2)  コンポーネント特性のCTLファイル名、またはフラットCTLのフラグを変更して保存する。これにより、コンポーネントの各項目がすべて削除されてしまう。
(3) これ以後は、ロードしたときのMCIファイルを参照し、その情報に基づいてコンポーネントが動作する。
(4) MCIファイルを移動、または削除するか、CTLファイル、コンポーネントのCTLファイルを別のマシンに移動して、MCIファイルが参照できなくなった時点で、エラーが発生する。
回避策 (A)  MCIファイルが参照できるような以前の開発環境に戻せる場合、その環境のもとでリポジトリ出入力を行うことで、コンポーネントリポジトリの情報が元に戻ります。従ってこれ以後、MCIファイルがなくてもエラーにはなりません。 
(B)  MCIファイルはあるが、以前の格納場所に置くことができない場合は、次の手順になります。
(1) アプリケーションレベルでリポジトリ出力します。
(2) その出力ファイルをエディタで開き、MCI_FILE=...\...mci の記述を探し、そのパスを現在格納されているパスに書き換える。
※その他の内容は絶対に編集しないで下さい。CTLが正しく読み取れなくなることがあります。
(3) 新規のCTLにその出力ファイルをリポジトリ入力する。
(4) コンポーネントが正常に動作するのを確認して、もう一度アプリケーションのリポジトリ出入力する。
(C)  MCIファイルがなくなった場合
(1) コンポーネントリポジトリでオプション/読込再読込 を行う。
(2) モデル、テーブル、プログラム等の各リポジトリの中で、今まで設定していたコンポーネントの項目を再設定する。
  •  ロードするコンポーネントアプリケーションが、ロード元のアプリケーションをコンポーネントとして再帰的に利用することはできません。このような場合、以下のようなメッセージが表示されます。
    「再帰的にコンポーネントが使用されているため、アプリケーションはロードできません。:アプリケーションファイル名」(1000393)
    (例)アプリケーションA→コンポーネントA→コンポーネントB→コンポーネントA

 

プログラム一般(Top)

  • プッシュボタンの書式に、G、J、S、T、X の文字を使用すると、実行時に指定した文字は表示されません。文字型書式「位置指示記号」が拡張されたためで、使用したい場合には、拡張機能を無効化してください。詳細は、本ファイルの 「文字型書式「位置指示記号」の拡張」 を参照してください。(1000230)
  • 内部イベントのようにコントロール上に制御が戻ってから実行されるイベントの場合、イベント実行コマンドのウェイトパラメータは「No」に設定する必要があります。(1000216) 
  • コントロール特性の[イベント実行]を設定しないプッシュボタンのクリックイベントによって、コールされたタスク、またはプログラムが起動時に即終了することがあります。この場合、プッシュボタンにユーザアクションを定義して下さい。(1000260)
  • 権利設定の利用可能権利一覧で、全て/同一コントロール/[ロードされたコンポーネント]のコンボボックスは、使用できません。(973775)
  • トランザクションモードが「物理」で、テーブル特性/キャッシュ範囲を「なし」に設定したテーブルをメインテーブルにしたオンラインプログラムでは、実行時にマルチマーキングは機能しません。(1000427)

データアクセス(Top)

  • 遅延トランザクションモードのプログラム、または物理トランザクションモードでキャッシュが有効になっているプログラムでは、タスク制御/オプションタブ/ウィンドウ再表示パラメータは機能しません。再表示が必要な場合、明示的にビュー再表示のアクションをしてください。(1000223)
  • 19桁〜38桁までの数値項目を扱う場合、MAGIC.INIに以下の設定が必要です。ただし、この設定を行うとパフォーマンスに影響がでる場合があります。(1000234)
    [MAGIC_SPECIALS]
    XXLNumericSize = Y
  • Pervasive.SQL(Btrieve)使用時に、カラムテーブルで日付型項目を新規に定義すると、記憶型式がStringDateになります。Pervasive.SQL(Btrieve)のデータベースにおいて今までのバージョンと互換性を持たせる場合は、IntegerDateに変更する必要があります。(1000098)

ロックとトランザクション(Top)

  • [設定/データベース]テーブルの[Magic ロック]欄が「テーブル」「なし」の場合、リンクの再構築時にロックが解除される場合があります。(0154738)

SQL共通(Top)

  • 既存テーブルに外部キーを追加して自動再作成を行う際に、外部キーを構成しているカラムのデフォルト値、または既存の値が、対応している参照キーのデータに存在しない場合、DBMSによる整合性チェックにより、レコードが作成されません。(1000224)
  • 外部キーを削除しても、参照されていたテーブル定義の変更ができないことがあります。これは、外部キーがあるテーブルの定義変更を行った際に作成されたバックアップのテーブルが存在している可能性があります。(1000229)

関数(Top)

  • OLEオートメーション関数を使用してOCXコンポーネントからVariant型データを受け取り、Magic文字型データに格納する場合は、あらかじめ書式の長さ分のダミー文字列を代入しておく必要があります。(0148138)
  • LIKE関数をSQL Where句/Magic SQLの式以外で使用する場合、日本語(DBCS)データでは正しく動作しません。(0563530)
  • LMCHKOUT、LMCHKIN 関数は、サポートされていません。(1000231)
  • EXPCALC関数の戻り値が小数の場合、この関数を含む計算式の結果が期待する値と異なることがあります。この場合、関数の戻り値に対してROUND関数を使用してください。(1000310)

ユーティリティ(Top)

  • プログラムチェックをかけると、メモリリークが発生します。プログラムチェックを多用する場合は、定期的に再起動を行なってください。(1000032)
  • 旧バージョンでコンポーネントを使用した場合、アップグレードした後にコンポーネントビルダを起動すると以下のメッセージが出る場合があります。
    「テーブルの定義が合っていません ! テーブルを変更しますので、再起動してください!」
    これは、コンポーネントビルダ用のDBテーブルの構成が変わったためで、コンポーネントビルダ゛でテーブル構成を自動的に変換いたします。コンポーネントビルダを再度起動していただければ、今まで通り使用することができます。(1000014)
  • 外部結合リンクコマンドをセレクトコマンドより前に定義すると、プログラムチェック時に「結合リンクで参照する項目は、リンクコマンドより前に定義しなくてはなりません。」 というエラーが表示されます。(471474)
  • オブジェクトの検索と置換」でモデル項目を置換することにより、テーブル変換ユーティリティが実行されると、Magicが異常終了することがあります。(1000407)

リポジトリ入出力(Top)

  • フォルダを含むアプリケーションをリポジトリ入力している途中でキャンセルを行うと、空のフォルダが作成されます。(623236)
  • テーブルのカラムやプログラム変数に対して[カラム特性/コントロール特性/ソースファイル/範囲]が設定されている場合、そのアプリケーションをリポジトリ出力すると、Magicが異常終了することがあります。(1000380)

フォーム(Top)

  • [基本色]テーブルにて、背景色を透過指定した場合、フォームエディタ上の色パレットでは黒の背景色で表示されます。(1000019)
  • APGで作成したコントロールと、手動で貼り付けたコントロールでは以下が異なります。(1000020)
    ラジオボタン/チェックボックス → スタイル(APG=凸立体、 貼り付け=凹立体)
    リストボックス → 幅のサイズ
  • カラムコントロールの水平整列/垂直整列の設定内容を同一テーブル内で混在させることができません。(1000184)
  • 何も変更していない場合でも、終了時に「変更内容を保存しますか?」の確認画面メッセージが表示されることがあります。(1000172)
  • 表示領域外に配置されているコンボボックスを移動すると、表示が消えてしまいます。この場合、一旦フォームを閉じて、再度オープンしてください。(1000315)
  • GUI印刷フォームに平面スタイルのテーブルコントロールを使用した場合、右端が二重線で作成されます。(1000316)
  • クラス0のGUIフォームにおいて、コンボボックスがテーブルコントロールに配置されている場合、フォーカスがコントロールへ移動されたときにのみ、コンボボックスとして表示されます。フォーカスがコントロールにないときには、エディットコントロールのように表示されます。(772049)
  • テーブルコントロールに、項目やコントロールを親子リンクとして配置した後で、テーブルの大きさを何度か調整すると、表示が乱れることがあります。(237922)
  • テーブルコントロールの特性で、ウィンドウ内テーブル=Yesに設定した場合、フォームのサイズをテーブルより小さくすると、テーブルに配置された個々のコントロールの選択が正常にできないことがあります。(915190)

HTMLフォーム(Top)

  • HTMLフォームにおいてリッチエディットを貼り付けられますが、このコントロールは表示専用となります。(1000021)
  • [複数行編集]欄が「No」のコントロールの高さを変更しようとした場合、予期しない空白行がフォームに挿入されることがあります。(1000186)
  • HTML形式のフォームにおいて、[入力フォーム]欄が「No」のフォームに対して、[入力フォーム]欄が「Yes」のフォームにあるエディットコントロールを貼り付けられます。また、[入力フォーム]欄が「No」のフォームへラジオボタンなどの入力用のコントロールを配置できます。しかし、これらの項目は実行時にWebブラウザ上で正しく扱われない可能性があります。(1000187)
  • フォーム上で矢印キーを押下した場合、マウスカーソルの形状が変化することがあります。(1000022)
  • テーブルコントロールに[背景]を指定しても、フォームエディタ上では表示されません。(1000188)
  • Javaアプレット、ActiveXコントロールに渡すパラメータを定義式で指定する場合、文字型で定義してください。(1000189)
  • HTMLフォームエディタのスタティックテーブルの一つのセル内に複数のコントロールを配置する場合、縦にしか並べることができません。(1000190)

印刷機能(Top)

  • 印刷においてフォーム寸法単位をダイアログに設定した場合、Magic のバージョンにより出力結果が異なる場合があります。寸法単位は、センチかインチを指定してください。(1000023)
  • 入出力特性の[用紙サイズ]、[用紙の向き]および[部数]の指定より、MGPRN ユーティリティで指定された印刷の向きが優先されます。(1000191)

プレビュー機能(Top)

  • Win98上で、プレビュー表示にて、多量の印刷、イメージを含む印刷時に、リソースまたは仮想メモリが不足すると警告メッセージが表示されます。(1000105) 
  • プレビュー表示では、イメージスタイルが以下の場合、有効になりません。(1000192)
    T=タイル
    C=コピー
  • プレビュー表示では、プリンタ固有のマージンの設定を考慮しておりません。このため、左右上下の余白部分が実際の印刷結果と異なります。(1000193)
  • 表示倍率を変更するコンボボックスにカーソルがあると、キーボードによって改ページができません。(1000194)
  • [フォーム特性]の[フォーム拡大]が[M=複数ページ]の場合、リッチエディットは拡大して出力できません。(1000195)

インターネット機能(Top)

  • URLを表す文字列にASCIIコード以外の文字が設定されている場合、そのコードは%##(##は 16進コード)という形式に変換されます。このコードはシフトJISとなります。この機能を使用する場合、MAGIC.INI にて以下の設定を行ってください。(1000196)
    [dbMAGIC_ENV]
    TripletNonAsciiUrl = Y
  • 日付項目にパラメータとして不正な値を渡した場合、日付は「7908/01/04」となります。(882613)
  • マージ出力時のトークン前付符号/後付符号のデフォルト値を変更できるようになりました。MAGIC.INI にて以下の設定を行ってください。(1000169)
    [MAGIC_DEFAULTS]
    MergePrefix = トークン前付符号
    MergeSuffix = トークン後付符号
    ※[dbMAGIC_ENV]セクションから[MAGIC_DEFAULTS]セクションに変更されました。

ブラウザクライアント(Top)

  • Magic eDeveloper をフォアグラウンドで使用する場合とバックグラウンドで使用する場合では、内部のコンテキストの管理方法が異なります。そのため、テスト実行などで複数のコンテキストを切り替える場合、バックグラウンドで使用するか、Magic Application Server を使用してください。(1000024)
  • レコードの情報はWebブラウザ側にキャッシュされるため、最新の情報が表示されるとは限りません。たとえば、レコード後処理を通過しない(レコードの内容がデータベースに反映されない)ときにも、Webブラウザ上では項目更新された情報が表示されます。必要に応じてビュー再表示アクションを発行してください。(895513)
  • Magicエンジン、HTTPServer、ブラウザを、Windows98 同一PC上にて構成している環境の場合、ブラウザクライアントの中で別のブラウザクライアントプログラムを呼び出した時に、「The Applet was not found」というメッセージが出る場合があります。(1000065)
  • ブラウザの「戻る」、「進む」、「更新(リロード)」ボタンを押下すると、動作が不安定になる場合があります。アプリケーション側での対応(リスタート、戻り、ビュー再表示ボタン等)を考慮してください。(1000198)
  • 一つのフレームセット内に複数のブラウザプログラムを実行させる場合、何れかのプログラムを親として、他のプログラムをコールする必要があります。(1000122)
  • ブラウザタスクは、ユーザメニューおよびコールプログラムから実行することはできません。(1000201)
  • ブラウザクライアントではNULL値を扱えません。(267166)
  • MIDV 関数およびREPV 関数は2分された全角文字によりデータを正しく認識できなくなることがありますので使用しないでください。(1000117)
  • ROLLBACK 関数の第一引数は無効となり、確認ダイアログは表示されません。(1000203)
  • LEVEL 関数は使用できません。(0808943)
  • ブラウザタスクの項目の内容はフローモニタに表示されません。(0979341)
  • [タスク特性]ダイアログの[ロック方式]欄を「入力時」と設定してもロックはかかりません。(1000206)
  • サブフォームを使用する場合、サブタスクから上位タスクの項目を参照する場合、パラメータを設定する必要があります。また、このパラメータはサブタスクで値を変更して、親のタスクに返すことはできません。(0963891)
  • サブフォームを使用する場合、[タスク特性]ダイアログの[トランザクションモード]欄の「ネスト遅延」は使用できません。(1000210)
  • サブフォームを使用する場合、一つのフォームに複数のサブフォームを定義することはできません。(1000211)
  • 複数行編集項目の先頭行または末尾行にカーソルが存在する状態において、上下矢印キーを押下しても、カーソルはその項目にとどまります。(332692)
  • ハイパーテキストコントロールの[ハイパーテキスト]欄はコントロール特性からのみ設定できます。(1000217)
  • 各PCのブラウザで使用する Microsoft Java VM(Microsoft Virtual Machine for Internet Explorer)のビルド番号は、統一することをお奨めいたします。(1000026)
    MSJでは、以下のビルド番号で動作確認をしています。
    ビルド 3802、2001/1/25 リリース
    Microsoft Java VM は、CD-ROMの\MSJVM\MSJAVX86.EXEからインストールすることができます。最新モジュールは、以下のURLから入手可能です。
    http://www.microsoft.com/JAPAN/java/download.asp
    ビルド番号は、コマンドプロンプトよりjview.exeを実行して確認できます。
    C:\Program Files\Microsoft Office\Office>jview
    Microsoft (R) Command-line Loader for Java Version 5.00.3802
    Copyright (C) Microsoft Corp 1996-2000. All rights reserved.
  • ブラウザのイメージファイル名の指定には、論理名は使用できません。(1000352)
  • サブタスクの初期モードを「親と同じ」にしても、親タスクのモードと動的に連動しません。その場合は、親のモードを変更したあとに、サブタスク側でビュー再表示やパラメータ変更に伴う再計算を行うことで、対応が可能です。(1000284)
  • 数値型、論理型のコンボボックス、リストボックス、ラジオボタンのラベルが選択できないことがあります。この場合、文字型のコントロールに変更するか、数値型ではデータコントロールの設定を行うことで対応してください。(1000092)
  • ブラウザ形式プログラムのフォームを作成するとき、項目パレットからFrontPageの[標準]タブにて編集中のページに、項目をドラッグ&ドロップで貼り付けるとき、項目名に2バイトコードを使用していると、文字化けします。文字化けした項目名は、オーサリングツール側のテキスト編集機能を利用して、正しい文字列に置換してください。項目名は2バイトコードは使用しないことを推奨いたします。(1000104)
  • テーブルコントロールおよびスタイルシートの「絶対位置」が指定されたコントロールがあると、実行時にIEが異常終了することがあります。(1000154)
  •  ブラウザクライアントのテンプレートファイルにJavaScriptがある場合、そのプログラムが別のブラウザクライアントのプログラムからコールされると、JavaScriptのエラーが出ることがあります。(996995)
  •  ブラウザクライアントのタスクに重複エラーハンドラ(対応:ロールバックして再起動)を設定した場合、実行時に重複エラーが発生すると、ブラウザ上のデータが正しく表示されないことがあります。(1000414)
  • FrontPage 2002で開かれたHTMLファイルに、HTMLテーブルのコントロールをドラッグ&ドロップを行っても、コントロールは生成されません。(426865)
  • リストボックス、コンボボックスでラベルを変数で定義し、選択肢を子タスクのバッチで登録している場合、実行時にコントロールの幅が広がることがあります。この場合、TRIM()、RTRIM ()関数を付加した式をラベルに設定してください。(1000431)
  • Microsoft Windows Update セキュリティ問題の修正プログラム - 2002 年 3 月 28 日 、Microsoft Security Bulletin MS02-015 を適用したPCにて、ブラウザクライアントモジュールのクライアント配置をYesで使用すると、ブラウザクライアントのアプレットがロード出来ないため、動作しません。(1000443)
    現状の対応策を以下に示します。
    · クライアント配置をNoで使用する。
    · 各クライアントPCに上記のWindows Updateを適用しない。
    注意:一度適用するとアンインストールすることはできません。
    MS02-015の詳細は、(http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/MS02-015.asp)を参照してください。

ワークグループ開発機能(Top)

  • 現バージョンでは、バージョン管理マネージャはサポートされていません。(1000183)

  • チーム開発を行なう場合、同一フォルダー内に、複数のアプリケーション(CTL)を混在させないことを推奨いたします。混在させる場合は、必ず各CTL毎に「識別子」がユニークになるように指定してください。(1000016)

  • 開発版で開発中のCTLファイルを実行版で実行する場合、CTLの同期が取られません。実行版で運用しているCTLを直接開発版で変更しないようにしてください。(1000017)

  • ワークグループ開発を使用する場合、Pervasive.SQL/Btrieveエンジンのトランザクション一貫性を有効にしてください。設定には、Pervasive Control Center で設定します。また、できるだけサーバエンジンを使用していただくことをお勧めします。(1000018)

Pervasive.SQL 2000

設 定

トランザクション一貫性保守

On
これにより、パフォーマンスよりも、データの一貫性が優先されます。

オペレーションバンドル制限

1

起動時間制限

1

  • モデルまたはテーブルの修正中は他のリポジトリの修正作業を行わないようにしてください(505263)

  • チーム開発機能は、複数の開発者が同時にプログラムリポジトリに対して読込み/書込み処理を行う為、障害発生のリスクが高くなる傾向にあります。又、リポジトリ内のデータ構造はMagic独自のリンク構成になっているため、何らかの障害が発生した場合にはアプリケーションファイル(以下MCF)全体に影響する障害が発生する可能性があります。
    運用によってリスクを低下させることが可能ですので以下に対応案を示します。
    ・プログラム以外のリポジトリを変更する場合は、他のリポジトリの修正作業を行わないようにする。
    ・プログラムリポジトリの順序が入れ替わるような作業は極力しない(フォルダ切替、プログラム移動/コピー、新規作成予定のプログラムは事前に空プログラムを生成しておく)
    ・プログラム修正がバッティングしないように、事前に担当プログラムの分担を決めておく。
    ・不用意に長時間、プログラムリポジトリ内に留まらない(こまめにチェックインしMCFを保存する)
    ・こまめにアプリケーションのバックアップを行う。
    ・破損したMCFを使用して継続してリポジトリ入出力を行わない。
    ・開発時にMagicが異常終了した場合は、再起動し修正中のプログラムが破損していないか確認する。可能であれば、1世代前のアプリケーションに変更する。
    ・余裕のあるメモリー環境にする。(256M以上を推奨)
    <注意>MCFが破損した場合、リポジトリ出力/入力で復元できない場合があります。

  • チーム開発機能を使用しないで、MCFを分散して開発を行った場合、もしテーブル定義がそれぞれのMCFで異なってしまい、それらを統合するためにリポジトリ入出力と上書登録を行うと、そのテーブルを使用しているプログラム中のセレクトコマンドの項目番号がずれてしまうことがあります。テーブル定義を変更する場合は、先にプログラムを統合してください。(1000421)
    すでにテーブル定義が異なって、統合する必要がある場合は、次のような方法を行ってください。
    アプリケーションAに対して、テーブルを変更したアプリケーションBのプログラムを統合すると仮定します。
    (1) AとBのテーブル定義が同じになるように、それぞれ修正する。
    (2) Bのテーブルとプログラムを出力する。
    (3) Aは、テーブルをリポジトリ入力し、それに対応するAのテーブルにカーソルを置いて、「オプション/検索と置換」を選択する。
    (4) 「置換」欄でリポジトリ入力したBのテーブルを選択し、実行する。
    (5) 「置換」が終わった後、Aのテーブルを削除し、その位置にBのテーブルを移動する。テーブル定義の削除の際、物理テーブルの削除を行わない。
    (6) Bのプログラムをリポジトリ入力する。

サーバ機能(Top)

  • MGRB.INI の AutoLoadで指定したエンジン数に達すると、それ以降はエンジンを終了しても AutoLoadされません。(1000219)
  • コールリモートのパラメータにおいて、戻り値とエラーコードに同じ項目を設定した場合にプログラムチェックユーティリティでエラーになりません、同じ項目を指定しないように注意してください。(1000220)
  • MGRB.INIのServerTimeoutを設定すると、非同期の実行時にI_AM_ALIVEメッセージがMRBに送られますが、メッセージが止まっても何もエラーが発生しません。(1000221)
  • コンテキスト関数は使用できません。(1000179)
  • メインプログラムは、コンテキスト作成時に実行されるため、以下の点でフォアグラウンドの時と動作が異なります。
    (1) タスク前処理/タスク後処理は、アプリケーションのオープン時でなく、コンテキスト作成時に実行されます。このためブラウザクライアント以外では、リクエスト毎に実行されます。 (1000180)
    (2) メインプログラムのタイマーイベントは無効になります。(1000181)

  • ブラウザクライアント以外のリクエストでは、コンテキストが継続されないため、SETPARAM、GETPARAMはリクエストを超えて使用できません。HTTP環境変数は、リクエスト毎にセットされるため取得できます。(1000182)

  • 現バージョンでは、ミドルウェア(CORBA、MQSeries)はサポートされていません。(1000232)
  • 現バージョンでは、MRB SSL機能はサポートされていません。(1000233)
  • Oracle,MSSQL Server, ODBCの各ゲートウェイで、データベースの接続を行う場合、DBMS/DBMS特性/最大接続数は、各インスタンスで使用する最大スレッド数の3倍程度を設定してください。最大接続数が使用スレッド数よりも少ない場合は、Magicの動作が不安定になったり、パフォーマンスが低下します。(例)5スレッド 最大接続数:15 (1000378)

コマンドラインリクエスタ(Top)

  • -ARGUMENTS及び-VARIABLESにおいて「,」をデータとしては使用できません。(1000027)
  • -TERMINATEにおいて右辺に何も指定しない場合、ALLとみなされます。(1000028)
     
 

参 考(Top

文字型書式「位置指示記号」の拡張(Top)

dbMAGIC Ver7,Ver8では、AS/400(iSeries)のDBCS対応のために、Magicの文字型書式の「位置指示記号」をスイッチを指定することにより機能拡張するようにしていました。Magic Ver9では、デフォルトで拡張された「位置指示記号」を使用できるように変更しています。

DDSフィールド 位置指示記号 制限事項
DBCS 専用フィールド(J) J 全角のみ入力可
DBCS 混用フィールド(O) X 全角、半角の混在入力可
DBCS 択一フィールド(E) T 全て全角か、全て半角で入力可
DBCS 図形フィールド(G) G 全角のみ入力可。シフトコード無し
SBCS (A) S 半角のみ入力可

  注意

  • AS/400(DB2/400)以外でも、使用することが可能ですが、GはJと同一の動作になります。
  • Magic位置指示記号の(J、T、G)は、必ず2文字単位で記述します。
  • 追加された位置指示記号と、Magic位置指示記号文字(J, X, T, G, S)は混在して記述することができません。例.JJJJXXXXなど
  • 追加された位置指示記号(J、T、G、S)は、U、L、# を使用できません。
  • この機能を無効化したい場合は、MAGIC.INI にて以下の設定を行ってください。
    [dbMAGIC_ENV]
    AS400Set = N

サポートするイメージフォーマット(Top)

サポートしているイメージファイルのフォーマットは以下のとおりです。
対応するグラフィックサポートモジュールをインストールする必要があります。

ファイルタイプ  サブタイプ 表示
BMP OS/2
Windows RGB Encoded
Windows RLE Encoded
JPG Standard Encoding
Progressive Encoding ×
JIF Standard Encoding
Progressive Encoding ×
PCX ZSoft Paintbrush Version0
ZSoft Paintbrush Version2
ZSoft Paintbrush Version5
MAC MacPaint No Header
MacPaint With Header
PCT Macintosh PICT
TGA 8 Bit Compressed
8 Bit UnCompressed
16 Bit Compressed
16 Bit UnCompressed
24 Bit Compressed
24 Bit Uncompressed 
IMG GEM Paint ×
TIFF Fax CITT3
Huffman Compressed
LZW Compressed ×
Packbits Compressed
Uncompressed 
WMF Window Metafile
MSP Microsoft Paint
PSD Adobe Photoshop 2.5 ×
RAS Sun Raster Images
EPS Color - No Preview
Color - With Preview
Monochrome - No Preview
Monochrome - With Preview
  • ▽は、実際のイメージと異なって表示される場合があります。

  • GIFデータを表示させるには、MAGIC.INIの[MAGIC_ENV]セクションに、以下の記述を追加します。(1000235)

    UnlockGIFLZWCode=[License Number]

    ここで、License NumberはUnisysから購入するライセンスコードを指定してください。

    なお、ライセンスに関する詳しい情報は、米国Unisys Corporationの下記URLにあります。
    http://www.unisys.com/unisys/lzw/lzwfaq_j.html

制限値(Top)

リポジトリ 構成要素 制限値
設定 アプリケーション 99
モデルリポジトリ   リソースに依存
テーブルリポジトリ テーブル数 リソースに依存
カラム数 999
インデックス数 DBMSに依存
インデックスセグメント DBMSに依存
プログラムリポジトリ プログラム数 40,000
処理レベルテーブル 10,000
処理テーブル 10,000
変数項目テーブル 10,000
式テーブル  9,999
フォームテーブル  9,999
DBテーブル 10,000
入出力ファイルテーブル  9,999
1フォームあたりの最大コントロール数 1,000
フォームのコントロールを一度に選択できる個数 1,000
クリップボードにコピーできる最大コントロール数  500
ヘルプリポジトリ ヘルプ数 40,000
権利リポジトリ 権利数 5,000
メニューリポジトリ メニュー数 5,000
レベル数 10
1レベルの最大エントリ数 5,000
コンポーネントリポジトリ コンポーネント数 128

ボーナスパック(Top)

\BONUS というディレクトリの下に Magic 関連のサンプルアプリケーションおよびユーティリティが同梱されています。

\BONUS\Utility\colorfont 基本色/フォント定義ファイル コンバート・
ユーティリティ(英語) 
\BONUS\demoapl\tutorial  デモプログラム
\BONUS\demoapl\HandlersScope ハンドラ・スコープ サンプルアプリケーション

 

なお、ボーナスパックに対するサポートは、マジックソフトウェア・ジャパン株式会社及びMagic Software Enterprises Ltd. が提供するサポートサービスには含まれません。

 

インタラクティブWebアプリケーションの開発と実行(Top)

ブラウザクライアント全般の技術資料「インタラクティブWebアプリケーションの開発と実行」
を以下のディレクトリに添付しています。

\Online\Interactive Web Applications.pdf

     
 

Ver9.20J SP1 の新機能 (Top)

 

項目パレットのサイズ調整 (Top)

 

フォームエディタの項目パレットのサイズを自由に調整できます。フォント番号は、#37 を使用します。

 

テキストの検索と置換 (Top)

アプリケーション内で使用されるテキスト(文字列)を検索することができます。また、検索した文字を別の文字に置換することができます。
これらのオプションは、[編集]メニューで使用できます。

フォルダ名とコメント以外の全てのオブジェクトが対象となります。
正規表現は以下のメタキャラクタ(SBCS)が使用できます。

  • . :任意の文字 (例)あい..えお 任意の文字がDBCSの場合は、2文字にします。

  • ^ :行の先頭 (例)^あい

  • $ :行の末尾 (例)えお$

Magicオブジェクトの検索と置換 (Top)

開発モードでの新しいオプションとして、Magicのオブジェクトをクロスリファレンス機能で検索して別のオブジェクトに置換する機能が追加されました。
任意のオブジェクトにカーソルを置き、[オプション/検索と置換]を実行するとこの処理を実行するためのダイアログが表示されます。

 

デフォルト値とデフォルトのNULL表示文字列 (Top)

 

アプリケーションのデフォルト値とデフォルトのNULL表示文字列を設定できます。これらの値は、MAGIC.INI の [MAGIC_DEFAULTS] セクションで定義します。

MAGIC.INI 内で指定できるキーワードは以下の通りです。
[MAGIC_DEFAULTS]
DefaultDate = [date value]
NullAlphaDisplay = [string value]
NullNumericDisplay = [string value]
NullLogicalDisplay = [string value]
NullDateDisplay = [string value]
NullTimeDisplay = [string value]
NullMemoDisplay = [string value]
NullBlobDisplay = [string value]


注意:

  • 設定は、MAGIC.INI ファイルの変更のみで行います。動作環境ダイアログではできません。

  • この設定がない場合は、Magic内のデフォルト値を使用します。

  • DefaultDate の書式は、日付モードに依存します。

  • 実行中にこの値を変更した場合、次に起動したときに有効になります。

 

ブラウザクライアントの言語サポート (Top)

 

動作環境(設定/動作環境/外部参照ファイル)に新しいパラメータが追加され、HTMLページに、表示/入力する文字セットを定義することが出来るようになりました。

"ブラウザタスクで使用するエンコード"

この設定を使用することで、ブラウザタスクのHTMLページによって使用されるエンコードテーブルの名前を指定できます。

ここに値を設定すると、ブラウザタスクによって作成される各HTMLページは、META タグを埋め込む事により定義された文字セットを使用するページになります。

<META HTTP-EQUIV="Content-Type" content="text/html; charset=XXX">

XXX は、動作環境で設定した文字列

この情報は、ブラウザクライアントモジュールが、定義したエンコードテーブルを使用して入力されたデータを Magic サーバエンジンに渡すために使用されます。

注意:

  • すでにHTMLページに METAタグがある場合は、その内容を変更しませんが、ブラウザクライアントモジュールは動作環境の設定によって定義されたエンコードテーブルを使用するようにします。

  • 日本語環境では常に "Shift_JIS"をセットしてください。

変更の適用:直後から有効

MAGIC.INIとコマンドラインでの名前:Unicode2Ansi

 

RUNMODE 関数の拡張 (Top)

アプリケーションサーバで最初に実行するアプリケーションの場合、動作状態に依存するようになりました。
バックグラウンドモードで最初にオープンされたアプリケーションの場合、メインプログラムでは、-1 を返します。

以下の場合、0 を返します。

  • コールされたプログラムで実行された場合や、メインプログラムのサブタスクで実行された場合

  • バックグラウンドモードのメインプログラムで2回目に実行されるか、追加スレッド上で実行された場合 

    注意:アプリケーションがクローズされ、他のアプリケーションがオープンされた場合、最初のコンテキストでは、-1 が返ります。

 

チーム開発の変更 (Top)

 

<プログラムリポジトリの修正>
プログラムリポジトリはアプリケーションのプログラム一覧情報を管理しています。プログラム一覧情報の変更を行う場合、プログラムリポジトリを変更する必要があります。
従来は、プログラム一覧情報の変更に対して自動的にチェックアウト、チェックインが行われていましたが、本バージョンより行われないように変更されました。開発者は、プログラムリポジトリに対して、手動でチェックアウト、チェックインを行う必要があります。
プログラムリポジトリをチェックアウトする場合のみ、プログラム一覧情報が更新されます。以下の操作によってプログラム一覧情報が更新されます。(つまり、プログラムリポジトリのチェックアウトを行わないと、以下の操作ができません。)

  • プログラムの新規作成

  • プログラムの削除

  • プログラムの順番の変更

  • 別のフォルダへのプログラムの移動

  • プログラムフォルダ名の変更

  • プログラムの上書き

  • プログラムのコピー

  • プログラムリポジトリへの権利設定

  • プログラムのリポジトリ入力

  • テーブルリポジトリからのAPG( 作成モード) の実行

<プログラムリポジトリでのチェックアウト、チェックイン>
[バージョン管理]メニューに表示される[チェックアウトPrg.Rep]または[チェックインPrg.Rep]をクリックするか、ツールバーのアイコンをクリックすることでプログラムリポジトリのチェックアウトやチェックインができます。プログラムリポジトリではアンチェックはできません。


<プログラムのリポジトリ入力>
プログラムを含んだアプリケーションをリポジトリ入力する時、プログラムリポジトリをチェックアウトするように要求されます。Magic Ver9.2 のリポジトリ出力ファイルを入力している時、プログラムリポジトリをチェックアウトするように要求されます。プログラムリポジトリがチェックアウトされなかったり、他の開発者によってチェックアウト済みの場合、Magic はリポジトリ入力処理が実行されなかったことを示す警告メッセージを表示します。

旧バージョンのMagic のアプリケーションをリポジトリ入力する場合、入力処理時にプログラムが含まれているかどうかを判断できません。このため、無条件にプログラムリポジトリのチェックアウト要求を出します。プログラムリポジトリがチェックアウトされなかったり、他の開発者によってチェックアウト済みの場合、Magic はリポジトリ入力処理が実行されなかったことを示す警告メッセージを表示します。この場合、リポジトリ入力処理は失敗し、アプリケーションは入力前の状態にロールバックされます。

パラメータ一覧>
チーム開発の変更に伴い、コール処理コマンドのパラメータ数は、最大255までとなります。

 

 

ハンドラ・スコープ (Top)


ハンドラが使用可能なリソースのスコープが、dbMAGIC Ver8のイベントが使用可能なリソースのスコープと一致するように変更されました。

<タスクツリーへの照会>
以前のMagic Ver9では、ハンドラが定義されたタスクにおいて参照可能なタスクツリーに対してのみ、ハンドラがアクセスすることが可能でした。Ver9.20J SP1からはハンドラは上位のタスクツリー全ての対してアクセスが可能となりました。

 

これにより、上位タスクの世代指定方法が変更になりました。


例えば、プログラムAからプログラムBをコールし、プログラムBからプログラムCをコールします。プログラムBには”ABC”イベントに対するハンドラが定義されているとします。プログラムCからイベント”ABC”が実行され、プログラムB内のハンドラが起動しました。

以前のMagic Ver9では、バンドラは(自身が定義されている)プログラムB(世代 = 0)とプログラムA(世代 = 1)にのみアクセスすることが可能でした。

Ver9.20J SP1からはハンドラはタスクツリーの全てにアクセスできるようになりました。この場合、ハンドラが定義されているタスクではなく、イベントが実行されたタスクの世代=0となります。したがって、プログラムC(世代=0)、プログラムB(世代=1)、プログラムA(世代=2)となります。この変更はクライアント/サーバーアプリケーションおよびブラウザアプリケーションの両方に対して適用されます。

例外−ブラウザクライアント>
ブラウザタスク内のハンドラから、他のブラウザタスクをコールした場合、ハンドラが定義されているタスクが参照できるタスクツリー内のリソースのみアクセスすることが可能です。
この場合、ハンドラが定義されているタスクの世代=1となります。
この指定方法は以前のMagic Ver9の指定方法と同じで、オンラインやバッチタスクの指定方法とは異なりますので、注意してください。

 

<入出力ファイル>
タスク内実行されたイベントにより上位タスクで起動したハンドラは、入出力特性の「使用する入出力名」を使用することにより、タスクツリー内の全ての入出力ファイルを使用することができます。

 

 

Ver8アプリケーションからの移行の強化 (Top)

 

ISAM(Pervasive.SQL)データベースを使用した、dbMAGIC Ver8のアプリケーションの移行を容易に出来るように拡張されました。MAGIC.INIに以下のオプションを指定してインポートすることによりエラーハンドラ−を自動的に追加させることができます。

[MAGIC_SPECIALS]
ImportCreateErrHandler

内容

Y レコードアクセス失敗時の設定を優先
TRNS トランザクションの設定を優先

 

<レコードアクセス失敗時の設定優先>
トランザクションエラー時(V8) エラー発生時(V9)
アボート アボート
リトライ アボート
スキップ アボート

 
レコードロック時(V8) エラーハンドラ(V9)
リトライ 無し
アボート [エラーハンドラ:レコードロック 対応:アボート]
スキップ [エラーハンドラ:レコードロック 対応:無視する]

 
アクセス失敗時(V8) エラーハンドラ(V9)
スキップ [エラーハンドラ:挿入/更新/削除に失敗 対応:無視する]
[エラーハンドラ:重複インデックス 対応:無視する]
リトライ 無し
アボート 無し

 

<トランザクションの設定を優先>
トランザクションエラー時(V8) エラー発生時(V9)
アボート アボート
リトライ 復旧
スキップ アボート

 
レコードロック時(V8) エラーハンドラ(V9)
リトライ 無し
アボート [エラーハンドラ:レコードロック 対応:アボート]
スキップ [エラーハンドラ:レコードロック 対応:無視する]

 
トランザクションエラー時(V8) エラーハンドラ(V9)
アボート 無し
リトライ 無し
スキップ [エラーハンドラ:挿入/更新/削除に失敗 対応:無視する]
[エラーハンドラ:重複インデックス 対応:無視する]

 

 

開発者ガイド (Top)

 

Magic を使用してプログラムを開発するヒント集として「開発者ガイド」が添付されました。Magicインストール時に選択する事により、Magicのスタートメニュー/オンラインマニュアルより確認できます。CD-ROMのOnlineフォルダにも格納されています。

 

 

日本語版で未サポートの機能 (Top)

  • J2EE、リモートフローモニター

  • インターナショナル版9.01SP3、9.20、9.20SP1で拡張された、以下のメール関数等はサポートされていません。

VARCURRN、VARINDEX
EVALSTR
HANDLEDCTRL
RQRTCTXS、RQRTCTX、RQCTXTRM、RQCTXINF
MAILCONNECT、MAILDISCONNECT、MAILSEND、MAILMSGID、MAILMSGFROM、MAILMSGTO、MAILMSGCC、MAILMSGSUBJ、MAILMSGTEXT、MAILMSGFILES、MAILMSGFILE、MAILFILESAVE、MAILMSGDEL、MAILERR、MAILMSGDATE、MAILMSGREPLYTO、MAILMSGHEADER
HTTPGET、HTTPPOST
CLIPADD、CLIPWRITE、CLIPREAD
     
 

Ver9.20J SP1 での改善内容 (Top)

(以前の修正事項については、history.htm を参照してください。)

設定 (Top)

  • [設定/動作環境]の[アプリケーションサーバとして動作]欄が「Yes」の場合、オンラインプログラムでIMEの入力が遅くなる件に対応しました。(1000084)
  • キー割り付けテーブルの次項目アクションにEnterキーを割り当てると、パスワード設定ウィンドウでパスワードが入力できなくなる件に対応しました。(1000267)

モデル (Top)

  •  

テーブル (Top)

  • 数値項目の書式で、0値表示の文字にアスタリスクが設定されていると、テーブルチェックで「デフォルト値が列の長さより長くなっています。」というエラーメッセージが表示される件に対応しました。(772721)

メニュー (Top)

  • メインプログラムのタスク前処理においてオンラインタスクを起動している状態で、メニューからプログラムを実行するとMagicが異常終了する件に対応しました。(776920)

コンポーネント (Top)

  • コンポーネントイベントのコメントを開くと、Magicが異常終了する件に対応しました。(748202)
  • チーム開発時に、コンポーネントリポジトリのテーブルからAPGでプログラムを作成するとき、フォルダ名を選択して行うとフォルダ名にゴミが表示され、Magicが異常終了する件に対応しました。(10427)
  • 式テーブルでCALLPROGのパラメータにコンポーネントプログラムを設定した場合、コンポーネントアプリケーションでプログラムの番号の変更は反映されない件に対応しました。(295192)
  • コンポーネントアプリケーションのメインプログラムのハンドラでメッセージパラメータに CALLPRG関数を定義した場合、呼出し元のプログラム側でエラーを発生させても実行されない件に対応しました。(281694)
  • ドキュメントテンプレートファイルにDoc_ext.jpn を設定して、コンポーネントの仕様書出力を行うと、Magicが異常終了する件に対応しました。(297583)
  • 即時有効=Noに設定したコンポーネントにあるイベント/ハンドラを、プッシュボタンに設定しても、動作しない件に対応しました。(302354)
  • コンボボックスのソーステーブルに、常駐パラメータをD:利用時に設定したコンポーネントテーブルが指定されている場合、実行時にMagicが異常終了する件に対応しました。(306069)
  • コンポーネントプログラムがメインプログラムの式イベントに設定されている場合、実行時に異常終了する件に対応しました。(758921)
  • コンポーネントプログラムにコンテキストメニューが定義されている場合、実行時にそのメニューは表示されない件に対応しました。(943322)
  • MAGIC.INI、またはショートカットにApplicationstartup=R またはB と設定して起動し、即時有効チェックを外したコンポーネントのあるアプリケーションをオープンすると、Magicが異常終了する件に対応しました。(1000355)
  • コンポーネントプログラムをコールする場合、フォームパラメータを指定すると、実行時にMagicが異常終了件に対応しました。(297587)
  • コンポーネントの権利が有効にならない件に対応しました。(1000007)
  • リンク項目をパラメータとしてコンポーネントのプログラムに渡し、コンポーネントのプログラム側でVARATTR関数を使用している場合、Magicが異常終了する件に対応しました。(780390)
  •  コンポーネントアプリケーションのCTLアクセスキーを持たないユーザでログオンして、コンポーネントプログラムを実行すると、Magicが異常終了する件に対応しました。(1000346)

プログラム一般 (Top)

  • パラメータ項目を定義した孫タスクを親タスクにドラッグ&ドロップすると異常終了するする件に対応しました。(0569028) 
  • フォーム特性でモーダルウィンドウ、またはフローティングウィンドウをYesに設定すると、左辺位置および上辺位置の設定が無効化され、実行時には画面中央に表示される件に対応しました。(1000290)
    MAGIC.INIに以下の設定を行うことにより有効になります。
    [MAGIC_SPECIALS]
    SpecialCenteredFloatingWindow = N
  • バックグラウンドモードで、次のようなプログラムが実行されると、Magicが異常終了する件に対応しました。(581160)
    (1) ハンドラが定義されており、3階層のネストで実行されている。
    (2) 実行された最後のタスクがメインプログラムで定義されたイベントハンドラから起動されている。
  • テーブル特性の[ウィンドウ内テーブル]を「Yes」に設定したテーブルにプッシュボタンを配置し、コントロールヒットイベントのハンドラでコールコマンドを定義した場合、コールタスクが起動しない件に対応しました。(1000257)
  • 範囲位置付/ポジションに設定されたBLOB項目に、CURRPOSITION関数の戻り値を更新し、パラメータの受け渡しを行うと、Magic が異常終了する件に対応しました。(1000245)
  • プログラムチェック中に、「式が使用されていません」という警告ダイアログが表示されているときに、ナビゲータのタスク名とタスクアイコンをクリックすると、異常終了する件に対応しました。(744240)
  • セレクトコマンドの変数定義を実項目に変更後、項目名の変更/削除を行うとMagic が異常終了する件に対応しました。(592627)
  • モーダルウィンドウ、フローティングウィンドウに指定した画面にあるテーブルでは、ホイールマウスが機能しない件に対応しました。(1000266)
  • 検証モードのコントロールレベルのコマンドが実行されたあと、同じコントロールに対するイベントハンドラが実行できない件に対応しました。(1000342)
  • 子タスクがあるプログラムを、別のプログラムにサブツリーとして貼り付けると、子タスクの定義式が正しく設定されない件に対応しました。(1000404)

データアクセス (Top)

  • データコントロールを設定したカラムを持つテーブルに対して、[オプション]が「Inet」のAPGを行うと、Magicが異常終了する件に対応しました。(1000244) 
  • メインプログラムが実行されたときに、トランザクション外でデータベースによるエラーが発生した場合、Magicが異常終了する件に対応しました。(541872)
  • データコントロールのソーステーブルが、複数のNULLデータを持つと、NULL表示文字列が表示されず、NULL計算値の最初の文字だけが表示される件に対応しました。(651843)
  •  親タスクでデータコントロールとして定義された変数項目を、サブタスクのフォームに配置しようとすると、Magicが異常終了する件に対応しました、(760611)
  • NULL値可とNULL値デフォルトをYesに設定したテーブルを、MS-SQLからOracleにデータコンバートすると、NULL値可とNULL値デフォルトがNoになってしまう件に対応しました。(137462)

SQL共通 (Top)

  • SQL Where句/MagicSQLの式に「ソ、表、噂」など、2バイト目が0x5Cの文字をセットして実行すると、正しく処理されない問題に対応しました。(1000436)

関数 (Top)

  • メインプログラムでSTAT(1,..)を実行しても、正しく機能しない件に対応しました。(428805)
  • ハンドラからCURROW(THIS())を実行しても、正しく機能しない件に対応しました。(754798)

ユーティリティ (Top)

  • メインプログラムでサブタスクが定義されているとき、コンポーネントイベントのクロスリファレンスを行うと、Magicが異常終了する件に対応しました。(302449)

リポジトリ入出力 (Top)

  • データコントロールのソーステーブルにコンポーネントが設定されている場合、リポジトリ出力/入力を行うと、この設定がクリアされる件に対応しました。(297334)
  • プッシュボタンの実行イベントに、メインプログラムのユーザ定義イベントを割り当てたモデル項目がある場合、このアプリケーションをリポジトリ出入力すると、プッシュボタンの実行イベントの定義がクリアされる件に対応しました。(759170)
  • アプリケーションをリポジトリ入力した直後にフラットファイルを作成した場合、そのファイルを実行版でオープンすると、Magicが異常終了する件に対応しました(993932) 
  • コンポーネント情報が含まれている出力ファイルをリポジトリ入力するときに、参照するコンポーネントアプリケーションのファイルが存在していない場合、Magicが異常終了する件に対応しました。(766145)
  • リポジトリ出力/入力すると、メニューに設定した権利が変更されてしまう件に対応しました。(977118)
  • キー番号を変更していたテーブルをメインテーブルにしたプログラムで、キー設定にKEYリテラルを使った式を設定した場合、このプログラムをリポジトリ出入力すると、KEYリテラルの番号が0になってしまう件に対応しました。(1000381)
  • リポジトリ入出力を行うと、データコントロールの範囲に指定された項目が変更されてしまう件に対応しました。(1000382,1000392)

フォーム (Top)

  • 「元に戻す」操作を行うと、データコントロールの範囲パラメータの値がクリアされる件に対応しました。(1000311)
  • スタイルがWindows立体の時に、テーブルの右側の境界線が表示されない件に対応しました。(756399)
  • 寸法単位がセンチで垂直精度が100の場合、フォームの高さと幅の値が、フォーム編集後に変更されてしまう件に対応しました。(1000377)
  • 子タスクのフォームテーブルからフォームを開き、親タスクのフォームのテキストコントロールを削除すると、同じフォーム上にあるコントロールの特性が、すべて子タスクのコントロールの特性に変更される件に対応しました。(1000394) 

HTMLフォーム (Top)

  •  

印刷機能 (Top)

  • バックグラウンドモード(マルチスレッド)で、印刷処理が機能しない件に対応しました。
    以下の制限があります。(1000141)
    (1) 寸法単位をダイアログに設定したGUI形式フォームは正常に印刷できないことがあります。
    (2) テキスト形式プリント用のプリンタドライバはマルチスレッドに対応していません。

プレビュー機能 (Top)

  •  

インターネット機能 (Top)

  • レコードメインテーブルで移動登録操作を行い、セレクトコマンドの順序を変更した場合、以下のテーブルに設定されている項目が連動しない件に対応しました。(1000218)
    (1) ハイパーリンク/パラメータ(フォーム特性、終了時URLなど)
    (2) フォーム/HTMLコントロール/サブフォーム/コントロール特性/パラメータ 
    (3) HTMLフォーム特性/コンテキスト変数/パラメータ
    (4) HTMLフォーム/Javaコントロール特性/パラメータ
    (5) HTMLフォーム/ActiveXコントロール特性/パラメータ  

ブラウザクライアント (Top)

  • ヘルプ番号を変更すると、自動ヘルプがずれてしまう件に対応しました(0472946)
  • 登録モードでレコードメインで実項目が代入された変数に対して、データ入力を行って次のレコードに移動すると、値がクリアされる件に対応しました。(960170)
  • ブラウザ起動時に、サブフォームのコントロールすべてのパーキング条件がNoになっている場合、ブラウザにエラーが表示される件に対応しました。(1000243)
  • サブフォームのパラメータに「スキップ」の項目を定義した場合、実行時に異常終了する件に対応しました。(1000252) 
  • 修正モードでデータコントロールのコンボボックスの範囲式に項目を設定している場合、項目の値の変更に対して、ラベルが連動しない件に対応しました。(1000313) 
  • 以下のようなプログラムにおいて、データ入力せずに次行アクションを発行すると、空のレコードが作成される件に対応しました。(1000317)
    (1) レコードメインにリンクコマンドがある。
    (2) レコード後処理にコールコマンドがある。
    (3) コール先のプログラムで、パラメータで渡した変数を項目更新する。 
  • サブタスクのフォーム上でコンボボックスの選択肢が表示されない件に対応しました。(1000289)
  • メインテーブルとリンクコマンドを定義したブラウザタスクで、実行時にリンクが成功しかつ重複エラーが発生した後に重複しないデータを入力しても、「重複エラー」が発生する件に対応しました。(1000341)
  • ブラウザクライアントでデータベースがOracleの場合、メインテーブルとリンクテーブルが定義されているプログラムで、途中行にレコードを挿入し、かつ重複エラーが出るとMagicが異常終了する件に対応しました。(984258)
  • マスク文字に「\」を使用する場合、「\\\\」と設定しなければならなかったのを、「\\」で設定できるようになりました。(1000209)
  • ビュー再表示アクションまたはモード変更を行った場合、カーソルがテーブル先頭に戻る件に対応しました。(1000214)
  • [タスク制御]ダイアログの[キャンセル確認]欄の設定が有効になりました。(1000207) 
  • [タスク制御]ダイアログの[強制レコード後処理]欄が「True」の状態において、レコードの削除を行うと、Magicが異常終了する件に対応しました。(1000319) 
  • [タスク制御]ダイアログの[レコード削除]欄を設定しても、データベース上からはレコードが削除されない件に対応しました。(1000208) 
  • エディットコントロールにカーソルを置いた状態で取消アクションを実行しても、修正中の値はクリアされない件に対応しました。(1000291) 
  • コンボボックスとリストボックスにおいて、マスク文字「,」は使用できない件に対応しました。(1000320) 
  • ブラウザクライアントの実行時にリンクに成功し、かつ重複エラーが発生した後で、キャンセルアクションを発行すると、ブラウザにContext not Found のエラーが表示される件に対応しました。(1000340)
  • IE6.0 を使用した場合、フレームまたはハイパーテキストコントロールが正しく認識されず、エラーが発生する件に対応しました。 (1000337)
  • 論理型項目のラジオボタンコントロールにおいて、範囲欄がデフォルトの「True,False」以外に設定されている場合、正しく値を表示または、設定することができない件に対応しました。(1000408)
  • 論理型項目のチョイスコントロールにおいて、範囲欄にエスケープ文字が使用されている場合、正しく値を表示または、設定することができない件に対応しました。(1000409)
  • 文字型項目のエディットコントロールにおいて、範囲欄に「下限値-上限値」の設定がされている場合、上限値の値が入力できない件に対応しました。(1000410)
  • 数値型項目のエディットコントロールにおいて、範囲欄に個別の値として負数値が設定されている場合、その値を入力できない件に対応しました。(1000411)
  • ラインモードのブラウザクライアントで、テーブル末尾で登録してから更に行作成を行うと、その行のレコードが登録されない件に対応しました。(1000418) 

ワークグループ開発機能 (Top)

  •  

サーバ機能 (Top)

  • バックグランドモードで、次のようなプログラムに複数の実行リクエストを送るとMagicが異常終了する件に対応しました。(583082)
    ・データベースがOracleまたはMSSQL Serverである
    ・ハンドラに式、またはタイマイベントが設定されている 
    ・メインプログラムのDBテーブルに、プログラムで使うテーブルと同じテーブルが定義されている 
    ※データベースがPervasive.SQL 2000の場合には問題は起きません。
  • タスクキャッシュを設定している状態で高負荷を掛けると、Magicが異常終了する件に対応しました。(616179)
  • バックグラウンドモードにおいて、OSコマンドのウェイトパラメータが機能しない件に対応しました。(1000376)
  • MGREQ.INI、MAGIC.INI の RequesterTimeout の単位が、ミリ秒から秒に変更されました。(0876714)
  • バックグランドモードで、HTMLフォームに数値型のコンボボックス、リストボックスを定義したプログラムを実行すると、エラーが発生する件に対応しました。(1000370)

インターネットリクエスタ (Top)

  •  ログ出力を行うと異常終了する件に対応しました。(1000438)
  • エンジンから返されるリクエスト結果が256文字より少ない場合に異常終了し、「Message out of Sequence」になる件に対応しました。(1000444)

インストール (Top)

  •  

その他 (Top)

  •  OSの例外処理が発生してMagicが終了する過程において、エラーのメッセージボックスを表示させないように対応しました。この場合、エラー情報はmgexcep.logに出力されます。この処理を有効にするには、次のパラメータをMAGIC.INIに設定します。
    [MAGIC_SPECIALS]
    ExceptionMessageBoxDisplay = N
  以上