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

 

Magic eBusiness Platform Ver9.01J SP2a
追加情報

 Magic eDeveloper
 Magic Application Server
 Magic Client

     
 

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

動作環境および注意事項

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

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

制限事項および留意事項
 メニュー
 コンポーネント
 モデル
 マルチスレッド
 ワークグループ開発機能
 フォームエディタ
 HTMLフォームエディタ
 印刷機能
 プレビュー
 インターネット機能
 ブラウザクライアント
 パーティショニング機能
 コマンドラインリクエスタ
 テーブルリポジトリ
 ロックとトランザクション
 データアクセス
 SQL共通
 その他

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

参 考
 サポートするイメージフォーマット
 制限値
 ボーナスパック
 インタラクティブWebアプリケーションの開発と実行

Ver9.01J SP2の新機能

Ver9.01J SP2での改善内容

Ver9.01J SP2aの新機能

Ver9.01J SP2aでの改善内容

     
 

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

SP1からのアップグレード

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

  • MAGIC.INI の以下の設定を変更してください。

旧デフォルト値

新デフォルト値

ContextInactivityTimeout = 20

ContextInactivityTimeout = 12000

ContextUnloadTimeout = 20

ContextUnloadTimeout = 200

  • MAGIC.INI [MAGIC_ENV]に、以下の項目を追加してください。

動作環境項目名

コマンド名

ブラウザクライアントモジュールのクライアント配置

UseSignedBrowserClient = Yes

ブラウザクライアントのサブバージョン

BrowserClientSubVersion =

  • デフォルトモデルを修正したため、モデルリポジトリでクラス[O=GUI出力]、型[F=フォーム]に指定されているモデルは、デフォルトモデルとの継承設定を解除してください。

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

  • Magicコントロールファイル(MCF)は互換性があります。ただし、フラットファイル(MFF)は、再作成を行う必要があります。

注意:

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

HASP

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

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

Pervasive.SQL 2000

readme_psql.htm

Memory

readme_mem.htm

Oracle8i

readme_ora8.htm

MSSQL7

readme_ms7.htm

ODBC

readme_odbc.htm

     
 

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

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

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

  • リクエスタ関連のモジュール名が以下のように変更されました。
    mgrqispi.dll → mgrqispi9.dll
    mgrqns20.dll,mgrqns35.dll → mgrqnspi9.dll
    mgrqcgi.exe → mgrqcgi9.exe
    mgrqgnrc.dll → mgrqgnrc9.dll
    mgrqhttp.dll → mgrqhttp9.dll

上記の変更に伴い、MAGIC.INI、HTMLファイルを必要に応じて変更してください。
(例:InternetDispatcherPath = /Magic9Scripts/mgrqispi9.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印刷

 

Magic Ver9 のアプリケーションサーバは、バックグラウンドモードではマルチスレッドで動作します。しかし、アプリケーションにおいてGUI形式プリンタに帳票を印刷する場合、アプリケーションサーバは、シングルスレッド(MAGIC.INI のMaxConcurrentRequests を 1 に設定)で動作させなければなりません。

 

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

 

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

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

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

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

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

 

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

     
 

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

メニュー(Top)

  • メニューにコンポーネントのプログラムを定義したい場合は、コンポーネントをプログラムコールするバッチプログラムを作成し、メニューに定義するようにしてください。

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

コンポーネント(Top)

  • コンポーネントの公開名に半角空白が含まれている場合、コンポーネントのロード時、コンポーネントリポジトリで、「Item Not Available」と表示されるか、選択テーブルに表示されません。

  • 公開名の末尾が ¥ (半角)で終わっている場合、このコンポーネントは、「Item Not Available」 と表示され、ロードされません。

  • SP1 以前で、コンポーネントを使用してた場合、SP2 にアップグレードした後にコンポーネントビルダを起動すると以下のメッセージが出る場合があります。
    「テーブルの定義が合っていません ! テーブルを変更しますので、再起動してください!」 これは、コンポーネントビルダ用の DBテーブルの構成が変わったためで、コンポーネントビルダ゛でテーブル構成を自動的に変換いたします。コンポーネントビルダを再度起動していただければ、今まで通り使用することができます。

モデル(Top)

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

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

マルチスレッド(Top)

  • コンテキスト関数は使用できません。

  • メインプログラムは、コンテキスト作成時に実行されるため、以下の点でフォアグラウンドの時と動作が異なります。

  1. タスク前処理/タスク後処理は、アプリケーションのオープン時でなく、コンテキスト作成時に実行されます。このためブラウザクライアント以外では、リクエスト毎に実行されます。 

  2. メインプログラムのタイマーイベントは無効になります。

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

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

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

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

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

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

Pervasive.SQL 2000

設 定

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

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

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

1

起動時間制限

1

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

フォームエディタ(Top)

  • [基本色]テーブルにて、背景色を透過指定した場合、フォームエディタ上の色パレットでは黒の背景色で表示されます。
  • APGで作成したコントロールと、手動で貼り付けたコントロールでは以下が異なります。
    ラジオボタン/チェックボックス → スタイル(APG=凸立体、 貼り付け=凹立体)
    リストボックス → 幅のサイズ
  • カラムコントロールの水平整列/垂直整列の設定内容を同一テーブル内で混在させることができません。また、GUI印刷で水平整列を[L=左寄せ]以外に指定した場合、プレビュー表示の時にカラム名がずれて表示されます。

HTMLフォームエディタ(Top)

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

印刷機能(Top)

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

プレビュー(Top)

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

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

  • URLを表す文字列にASCIIコード以外の文字が設定されている場合、そのコードは%##(##は 16進コード)という形式に変換されます。このコードはシフトJISとなります。この機能を使用する場合、MAGIC.INI にて以下の設定を行ってください。
    [dbMAGIC_ENV]
    TripletNonAsciiUrl = Y
  • dbMAGIC Ver8 から移行を行う場合、HTMLフォームおよびHTMLドキュメントフォームのテーブルの行高さが正しく設定されない場合があります。
    その場合、移行後にテーブル内に項目を貼り付けなおしてください。
  • HTMLフォーム特性の[コンテキスト変数]ダイアログの[Cookieを使用]欄を「No」に指定した場合、コンテキスト変数の情報が正しく作成されないことがあります。[Cookieを使用]欄は「Yes」に指定してください。
  • 日付項目にパラメータとして不正な値を渡した場合、日付は「7908/01/04」となります。
  • マージ出力時のトークン前付符号/後付符号のデフォルト値を変更できるようになりました。MAGIC.INI にて以下の設定を行ってください。
    [dbMAGIC_ENV]
    MergePrefix = トークン前付符号
    MergeSuffix = トークン後付符号

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

  • Magic eDeveloper をフォアグラウンドにおいて使用する場合とバックグラウンドにおいて使用する場合とでは、内部的なコンテキストの管理方法が異なります。そのため、複数のコンテキストを切り替える必要がある場合などテスト時においては、バックグラウンドにおいて使用するか、Magic Application Server を使用してください。
  • レコードの情報はWebブラウザ側にキャッシュされる為、最新の情報が表示されるとは限りません。たとえば、レコード後処理を通過しない(レコードの内容がデータベースに反映されない)ときにも、Webブラウザ上では項目更新された情報が表示されます。必要に応じてビュー再表示アクションを発行してください。
  • Magicエンジン、HTTPServer、ブラウザを、Windows98 同一PC上にて構成している環境の場合、ブラウザクライアントの中で別のブラウザクライアントプログラムを呼び出した時に、「The Applet not found」というメッセージが出てコントロールが出来なくなる場合があります。
  • ブラウザの「戻る」、「進む」、「更新(リロード)」ボタンを押下すると、動作が不安定になる場合があります。アプリケーション側での対応(リスタート、戻り、ビュー再表示ボタン等)を考慮してください。
  • 一つのフレームセット内に複数のブラウザプログラムを実行させる場合、何れかのプログラムを親として、他のプログラムをコールする必要があります。
  • ブラウザタスクが実行されているウィンドウ、またはフレーム対して、URL入力などにより、ブラウザタスクを実行させる(コンテキストが再作成される)場合、現在のブラウザタスクを終了してから新しいブラウザタスクを実行させるようにしてください。
  • ブラウザタスクは、ユーザメニューおよびコールプログラムから実行することはできません。
  • ブラウザクライアントではNULL値を扱えません。
  • MIDV 関数およびREPV 関数は2分された全角文字によりデータを正しく認識できなくなることがありますので使用しないでください。
  • ROLLBACK 関数の第一引数は無効となり、確認ダイアログは表示されません。
  • CALLPROG 関数を使用してブラウザクライアントのプログラムをコールすることはできません。
  • LEVEL 関数は使用できません。
  • ブラウザタスクの項目の内容はフローモニタに表示されません。
  • [タスク特性]ダイアログの[ロック方式]欄を「入力時」と設定してもロックはかかりません。
  • [タスク特性]ダイアログの[終了時URL]欄の設定において、出力先フレームの設定は無効となります。
  • [タスク制御]ダイアログの[キャンセル確認]欄の設定は無効となります。
  • [タスク制御]ダイアログの[レコード削除]欄を設定しても、データベース上からはレコードが削除されません。
  • マスク文字に「\」を使用する場合、「\\\\」とする必要があります。
  • サブフォームを使用する場合、サブタスクから上位タスクの項目を参照する場合、パラメータを設定する必要があります。また、このパラメータはサブタスクで値を変更して、親のタスクに返すことはできません。
  • サブフォームを使用する場合、[タスク特性]ダイアログの[トランザクションモード]欄の「ネスト遅延」は使用できません。
  • サブフォームを使用する場合、一つのフォームに複数のサブフォームを定義することはできません。
  • 複数行編集項目の先頭行または末尾行にカーソルが存在する状態において、上下矢印キーを押下しても、カーソルはその項目にとどまります。
  • ラインモードの画面において、行作成アクションの実行により作成された行を登録せずに、マウスを使用して該当行より下の行をクリックすると、クリックされた行の表示が正しくなくなったり、ランタイムエラーが発生することがあります。その行を登録しない場合、取消アクションを実行するようにしてください。
  • 修正したレコードの次のレコードを削除すると、削除されたデータが残るか、Magicエンジンが異常終了します。レコードを削除する前に、ビュー再表示アクションを発行してください。
  • ビュー再表示アクションまたはモード変更を行った場合、カーソルはテーブル先頭に戻ります。
  • セレクトの条件に式を定義してカーソルのパーキングの制御を行なうことはできません。
  • イベント実行コマンドのウェイトパラメータが有効になりました。そのため、内部イベントのようにコントロール上に制御が戻ってから実行されるイベントの場合、ウェイトパラメータは「No」に設定する必要があります。
  • ハイパーテキストコントロールの[ハイパーテキスト]欄はコントロール特性からのみ設定できます。
  • 複数のタスクコール(サブフォームからのコールを含む)が定義されているプログラムの中で、サブツリーの切り取り/貼り付けあるいはドラッグアンドドロップを行った場合、ブラウザフォームのサブフォームのタスク番号は連動しません。
  • サブツリーの貼り付けを行った場合、ブラウザフォームのサブフォームのタスク番号は連動しません。
  • レコードメインテーブルで移動登録操作を行い、セレクトコマンドの順序を変更した場合、以下のテーブルに設定されている項目は連動しません。
    (1) タスク特性/終了時URL/パラメータ
    (2) フォーム/HTMLコントロール/サブフォーム/コントロール特性/パラメータ
  • ヘルプ番号が変更されると、自動ヘルプがずれます。この場合、リポジトリの入出力を行ってください。ヘルプを追加する場合は、リポジトリの一番最後から行ってください。
  • 各PCのブラウザで使用する Microsoft Java VM(Microsoft Virtual Machine for Internet Explorer)のビルド番号は、統一することをお奨めいたします。
    MSJでは、以下のビルド番号で動作確認をしています。
    ビルド 3802、2001/1/25 リリース
    Microsoft Java VM は、以下のURLから、Downloadが可能です。
    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.
  • 本バージョンで提供しているJavaApplet、JavaScript は以下のとおりです。
JavaApplet MGBC901_04.CAB または MGBC901_04S.CAB
JavaScript MGBC901_04.JS

パーティショニング機能(Top)

  • MGRB.INI の AutoLoadで指定したエンジン数に達すると、それ以降はエンジンを終了しても AutoLoadされません。
  • コールリモートのパラメータにおいて、戻り値とエラーコードに同じ項目を設定した場合にプログラムチェックユーティリティでエラーになりません、同じ項目を指定しないように注意してください。
  • MGRB.INIのServerTimeoutを設定すると、非同期の実行時にI_AM_ALIVEメッセージがMRBに送られますが、メッセージが止まっても何もエラーが発生しません。
  • Magic起動時に自動的にアプリケーションを起動する場合、開発モードで起動するとアプリケーションサーバとして認識されません。アプリケーションサーバとして認識させるためには、Magic起動後に一度開発モードを抜ける必要があります。
  • MGREQ.INI, MAGIC.INI の RequesterTimeout はミリ秒で設定する必要があります。10秒以上を設定する場合は、直接エディタでINIファイルを編集してください。
  • Windows98環境でアプリケーションサーバをバックグランドモードで起動すると、正常に終了しない場合があります。

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

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

テーブルリポジトリ(Top)

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

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

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

データアクセス(Top)

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

SQL共通(Top)

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

その他(Top)

  • プログラムチェックをかけると、メモリリークが発生します。プログラムチエックを多用する場合は、定期的に再起動を行なってください。
  • OLEオートメーション関数を使用してOCXコンポーネントからVariant型データを受け取り、Magic文字型データに格納する場合は、あらかじめ書式の長さ分のダミー文字列を代入しておく必要があります。
  • プッシュボタンの書式に、G,J,S,T,X の文字を使用すると、実行時に指定して文字は表示されません。文字型書式「位置指示記号」が拡張されたためで、使用したい場合には、拡張機能を無効化してください。詳細は、本ファイルの「文字型書式「位置指示記号 」の拡張」を参照してください。
  • LIKE関数をSQL Where句/Magic SQLの式以外で使用する場合、日本語(DBCS)データでは正しく動作しません。
  • 複数のタスクコールが定義されているプログラムの中で、サブツリーの切り取り/貼り付けを行った場合、コールコマンドのタスク番号は連動しません。
  • 子タスクで、パラメータを受け取るための変数のセレクトコマンドより先に、実項目のセレクトコマンドが設定されている場合、子タスクはパラメータの値を受け取れない場合があります。その場合は、セレクトコマンドの「変数」を「パラメータ」に変更するか、変数の位置を実項目よりも上に移動することにより回避できます。
  • LMCHKOUT,LMCHKIN 関数は、サポートされていません。
  • 現バージョンでは、ミドルウェア(CORBA、MQSeries)は、サポートされていません。
  • 現バージョンでは、MRB SSL機能は、サポートされていません。
  • 式テーブルで移動登録を行った場合、データコントロールの範囲パラメータに指定された式番号は連動しません。
  • 孫タスクを親タスクにドラッグ&ドロップすると異常終了する場合があります。
  • 以下のフォント/基本色定義は、開発、実行環境で異なります。
  実行環境 開発環境
フォント定義 (1)基本テーブル項目 (23)開発基本テーブル項目
(9)基本プッシュボタンフォント (27)開発基本プッシュボタンフォント
基本色定義 (1)基本色 (18)開発基本色
(2)基本項目色(平面) (19)開発基本項目色(平面)
(5)基本項目色(立体) (20)開発基本項目色(立体)
     
 

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

dbMAGIC Ver7,Ver8では、AS/400の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

サポートするイメージフォーマット(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]セクションに、以下の記述を追加します。

    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  デモプログラム

 

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

 

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

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

\Online\Interactive Web Applications.pdf 

     
 

Ver9.01J SP2の新機能 (Top)

ブラウザクライアントモジュールの環境設定 (Top)

<ブラウザクライアントモジュールのクライアント配置>

動作環境/アプリケーションサーバに追加されました。

有効値: 「Yes 」または「No」

ブラウザベースのプログラムにおいて使用するモジュール(JavaApplet)をクライアントに配置するかどうかを指定できるようになります。
クライアントに配置することにより、モジュールのロード時間を短縮できます。

Yes モジュールをクライアントに配置します。使用されるモジュールはLauncher.CABおよびMGBC9##_##S.CABになります。
##_##の部分にはバージョンとサブバージョンを表す数値が入ります。
No モジュールをクライアントに配置しません。使用されるモジュールはMGBC9##_##.CABになります。##_##の部分にはバージョンとサブバージョンを表す数値が入ります。

変更の反映: 即時
MAGIC.INI およびコマンド行名: UseSignedBrowserClient

アプレットが最初のロード時にクライアント・マシン上に格納されます。ブラウザ・タスクがこのモジュールを必要とする時は、アプレットは直接クライアントに配置されたモジュールを使用し、ダウンロードする必要がありません。

モジュールがクライアントローカルに格納する前にブラウザ・ビルトイン確認ダイアログにてユーザが承認を行なう必要があります。

注意:動作環境ダイアログで設定する場合、「ブラウザクライアントのサブバージョン」と同時に設定してください。

<ブラウザクライアントのサブバージョン>

ブラウザベースのプログラムにおいて使用するJavaAppletおよびJavaScriptのMagicが管理するサブバージョンを指定します。
この設定は文字列で「01」のように指定します。「01」と指定した場合、Magicバージョン9.01JSP2aにおいて使用されるファイルは以下のようになります。

JavaApplet MGBC901_04_01.CAB または MGBC901_04_01S.CAB
JavaScript MGBC901_04_01.JS

この指定がない場合、Magicに標準添付されているファイルが使用されます。

変更の反映: 即時
MAGIC.INI およびコマンド行名: BrowserClientSubVersion

注意:動作環境ダイアログで設定する場合、「ブラウザクライアントモジュールのクライアント配置」と同時に設定してください。


<署名されたブラウザ・クライアント・モジュール>

 

ブラウザ・クライアントJavaアプレット・モジュールは、VeriSignのデジタル署名により証明されました。これは、エンド・ユーザにこのモジュールの内容が改ざんされなかったことをVeriSign承認証明書によって確認することを意味します。

署名されたアプレット・ファイルは、標準的なアプレット・ファイルと異なります。署名されたアプレット・ファイルと署名されていないアプレット・ファイル名の違いは最後の文字'S'によって識別することができます。

例えば、MGBC901_03S.cab

アプレットの最初のロード時にブラウザ・ビルトイン確認(セキュリティ警告)ダイアログが表示されます。実行するには、はい(Y)を選択します。

 

ブラウザクライアント・ツールバー (Top)

 

VCRメニュー用のイメージファイルを使用して、Magicの実行モード時のVCRメニューと同等の操作をブラウザクライアントにて行えます。

同様に編集メニュー用のイメージファイルを使用して、「行作成」「行削除」「取消」の操作をブラウザクライアントにて行えます。

これらのイメージファイルはそれぞれ「mgvcr.jpg」、「mgedit.jpg」というファイル名でブラウザクライアント用のJavaAppletとJavaScriptと同一のフォルダにインストールされます。

これらの機能を使用する場合、[フォーム特性]の[HTMLファイル]欄に指定されたファイル中に、それぞれ以下のような内容を追加します。

[src]のパスはそれぞれの環境に合わせて変更してください。ただし、[name]の内容は変更しないでください。

VCRメニュー:<IMG src="/mgvcr.jpg" name="MG_VCR">
編集メニュー:<IMG src="/mgedit.jpg" name="MG_EDIT">

 

イベント実行コマンドの改善 (Top)

 

イベント実行コマンドが非同期(Wait=No)のときもパラメータを渡すことができるようになりました。パラメータは参照のみ可能です。従ってイベントプログラムでパラメータを変更しても、値は戻すことはできません。


MVCSナビゲーション (Top)

 

 

チーム開発を有効にすると、[ナビゲータ]ペインで [MVCS]が選択できるようになります。
オブジェクトをチェックアウトすると、オブジェクトが[ナビゲータ]ペインに表示されます。このツリーで表示されたオブジェクトをクリックすることで、自分がチェックアウトしたオブジェクトに、ジャンプすることができます。


タスク定義内でのカット&ペースト処理の拡張 (Top)

 

タスク定義内のハンドラテーブルと処理テーブルで行のカット&ペーストが出来るようになりました。
タスク定義の場合は、レベルがグループ、コントロール、ハンドラの時だけ有効になります。
番号カラムをクリックして行をハイライトさせ、右クリックでコンテキストメニューを開き、コピー、切り取り を選択します。

タスク定義をコピーすると対応する処理テーブルの内容もコピーすることができます。

 

カラム境界特性 (Top)


GUIフォームのカラム特性に、2つの特性が追加されました:

上境界線

カラムの上の境界線を表示するかどうかを指定します。

右境界線

カラムの右側の境界線を表示するかどうかを指定します。

Yes/No または、式で定義できます。

 

選択テーブルでの位置付け機能 (Top)

 

Magic が開発機能として提供している選択一覧(モデル一覧、テーブル一覧 など)
で、選択項目を位置付けする機能が拡張されました。

インクリメンタルサーチの様に先頭の文字を入力することで該当する項目に位置付けを行ないます。(全角文字での検索は正常に機能しない場合があります。)

 

VARPIC関数 (Top)

 

この関数は、指定した項目の書式を取得するものです。

構文

VARPIC(シンボル名、モード)

シンボル名 

セレクト項目のシンボル名(VAR リテラルをつけないとエラーになる場合があります)

モード(数値)

機能モード

モード= 0

カラム特性、変数特性で定義された書式が返ります。Blobは、空白が返ります。 

モード= 1

コントロール特性上で定義された書式が返ります。クラス=0 のみ有効です。

 

フォームに定義されていない 項目は モード=0 と同じ結果になります。

 

EDITGET関数 (Top)

 

項目の内容を取得する関数ですが、通常のフローでは動作せず、ハンドラやコントロール前後処理時にのみ有効になります。

構文

パラメータはありません。

戻り値

ハンドラ実行時に最後に編集された値が返ります。型は、対象となる項目の書式に依存します。

 

(例)

ハンドラの場合

トリガが発生したときにパーキングしている項目の現在の値が返ります。このときハンドラが、強制終了:レコード になっている場合は、無効です。

コントロール前

指定したコントロールに入ろうとした時点でそのコントロール(項目)の内容が返ります。

コントロール後

指定したコントロールを出ようとした時点でそのコントロール(項目)の内容が返ります。


EDITSET関数 (Top)

 

この関数は、ハンドラーが起動された時点でのカレントのコントロールの内容に値を設定します。

 

構文

EDITSET(値)

設定する値 型は、設定先の型に合わせる必要があります。 

戻り値

論理値 True 処理が成功した場合
False 処理が失敗した場合

 

(例)

ハンドラの場合

トリガが発生したときにパーキングしている項目に指定した値が設定されます。このときハンドラが、強制終了:レコード になっている場合は、無効です。

コントロール前

指定したコントロールに入ろうとした時点でそのコントロール(項目)の内容が更新されます。

コントロール後

指定したコントロールを出ようとした時点でそのコントロール(項目)の内容が更新されます。

 

クロスリファレンスの範囲 (Top)

 

クロスリファレンスの対象となるリポジトリの行番号の範囲を指定できるようになりました。

クロスリファレンス実行時のダイアログに対象となる番号の範囲を指定することで項目が追加され、CTL特性を除く全てのオブジェクトで範囲を指定することが可能です。

     
 

Ver9.01J SP2 での改善内容 (Top)

コンポーネント (Top)

  • メインプログラムにあるスコープ=グローバルに設定されたハンドラが、即座に実行されない件に対応しました。
  • 不正な、MCIファイルをロードしようとすると異常終了する件に対応しました。 

モデル (Top)

  • データコントロールを定義したモデルを、移動登録で下方向に移動すると、Magicが異常終了する件に対応しました。

マルチスレッド (Top)

  • リンク項目でソートすると異常終了する件に対応しました。
  • DBDEL関数でテーブルの削除を行った後、そのテーブルをアクセスすると "テーブルの定義があっていません" というエラーになる件に対応しました。 

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

  • チーム開発時、クロスリファレンスの直前に再同期が行われない件に対応しました。

フォームエディタ (Top)

  • クラス1以上の同一クラスのフォームが複数ある場合は、フォームエディタからの終了時に異常終了する件に対応しました。
  • ブラウザクライアントでHTMLコントロールを変更すると異常終了する件に対応しました。
  • ハイパーリンクダイアログでプログラム一覧を閉じるときに異常終了する件に対応しました。

印刷機能 (Top)

  • タスクバーのアイコンをクリックしてもプレビューウィンドウにフォーカスが移動しない件に対応しました。 

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

  • HTMLマージ処理で、INIGETを使ったタグを使うと異常終了する件に対応しました。

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

  • リンクの再計算が行われると、リンクレコードを登録しようとする件に対応しました。
  • 後付マイナス符号の書式を定義した数値項目(N5.2-;-;) が表示できない件に対応しました。
  • リンクコマンドの「確認」パラメータがYesの場合、リンク失敗時のエラーチェックが行われない件に対応しました。
  • リンクに失敗しても、戻り値がTrueが返る件に対応しました。
  • THIS()関数を使ったVARATTR()関数が機能しない件に対応しました。
  • 式で設定されたプッシュボタンのイベント実行が、機能しない件に対応しました。
  • SETCRSR()関数を設定したプログラムをコールすると、親のプログラムで関数が実行される件に対応しました。
  • テーブルコントロール上の無効なコントロールにパークする不具合に対応しました。パークするコントロールが存在しない場合は、ブラウザクライアントの内部エラー(Internal Error)になります。 
  • 時刻型項目に不正な時刻データを入力した場合にエラーにならない件に対応しました。
  • [設定/動作環境]の[アプリケーションサーバ] タブの[コンテキスト非稼動タイムアウト] 欄および[コンテキストのアンロードタイムアウト] 欄の設定は無効になる件に対応しました。 
  • [タスク特性]ダイアログの[チェック時期]欄に「即時」と設定してもレコード更新後にのみチェックを行なわれる件に対応しました。 
  • コンボボックスをクリックしたときにリストがすぐに閉じてしまう場合がある件に対応しました。
  • [タスク制御]ダイアログの[更新確認]欄の設定が無効になる件に対応しました。
  • APGでHTMLファイル作成時に、論理名が反映しない件に対応しました。
  • 日付項目に'0000/00/00'Dateを設定できない件に対応しました。

テーブルリポジトリ (Top)

  • コメントを設定したテーブルを新しいテーブルに上書き登録を行った後、Magicが異常終了する件に対応しました。

リポジトリ入出力 (Top)

  • 書式がN14.3とCN10.6のカラムを持つテーブルをリポジトリ入力すると、チェック時に「サイズが不正です」のエラーが出る件に対応しました。
  • ドキュメント出力時にモデルの書式、型などの特性パラメータが出力できない件に対応しました。
  • リポジトリ入力時にCTL特性に設定された権利が反映されない件に対応しました。

データアクセス (Top)

  • セレクトコマンドの移動登録を行うと、GUIコントロールのパラメータ設定が消える件に対応しました。(例えば、プッシュボタンの実行イベント等)
  • レコード後処理にエラーコマンドがあると、強制終了=レコードに設定したハンドラの実行時にプログラムが終了できなくなる件に対応しました。
  • 照会モード位置付けの後、上方向のマルチマーキング機能が正しく動作しない件に対応しました。

その他 (Top)

  • ハンドラの式を定義、または修正を行った後でESCを押すと、異常終了する件に対応しました。
  • ヘルプ項目のエントリの順序を変更した後で、正しく自動ヘルプを設定されているプログラムでプログラムチェックを行うとエラーになる件に対応しました。
  • メインプログラムの終了条件が "Yes" で、アプリケーション開始モードが "R=実行" の時、アプリケーションをオープンすると異常終了する件に対応しました。 
  • エラーコマンドのウィンドウタイトルが英語表記になる件に対応しました。 
  • 項目に代入するデータにスプリットが発生した場合、正しく処理されない件に対応しました。例えば、10バイトの領域に11バイトのデータを代入し、10バイト目と11バイト目で2バイトコードを構成している場合、2バイトコードのスプリットが発生する為、データが正しく認識できませんでした。
     
 

Ver9.01J SP2aの新機能 (Top)

RQRTINF 関数の戻り値の変更(Top)

RQRTINF関数の戻り値が以下のように変更されました。(太文字が追加された値)
  • ホスト名
  • ポート番号
  • IPアドレス
  • プロセスID
  • ステータス
  • アプリケーション名
  • 実行スレッド数
  • ピークスレッド数
  • 最大使用可能スレッド数

イベントの追加/変更(Top)

以下のイベントが追加されました。
  • チェックアウト
  • チェックイン(Ctrl + 1)
  • 再同期
  • アンチェック(Ctrl + 2)
  • 水平均等揃え(Ctrl + 2)
  • 垂直均等揃え(Ctrl + 3)
  • 前面移動(Ctrl + 4)
  • 背面移動(Ctrl + 5)
  • 最背面移動(Ctrl + 6)
  • 最前面移動(Ctrl + 7)
  • Zオーダ表示(Ctrl + 8)
  • サイズ調整(Ctrl + 9)
  • フォルダへ移動(Ctrl + F)
定義式ウィンドウ内でのショートカットが変更されました。
  • 関数一覧(Ctrl + 1)
  • アクション一覧(Ctrl + 2)
  • キーボード一覧(Ctrl + 3)
  • 権利一覧(Ctrl + 4)
  • コントロール一覧(Ctrl + 5)
  • テーブル一覧(Ctrl + 6)
  • プログラム一覧(Ctrl + 7)
  • エラー一覧(Ctrl + 8)
MAGICクライアントで以下のイベントが有効になりました。
  • ダブルクリック
  • クリック
  • マウスアウト
  • マウスオーバー

ただし、同一のコントロールに対して「クリック」イベントと「ダブルクリック」イベントの両方をハンドラに指定すると、ダブルクリックの場合、「クリック」イベントが2回ハンドリングされ、「ダブルクリック」イベントは無効になります。

開発機能の改善(Top)

  1. 開発時にリポジトリに戻るとき、最後にリポジトリがオープンしていた時のカーソルがあるフォルダに、自動的にパークするようになりました。
  2. リポジトリの中で、オプション・メニューのフォルダオプションをクリックするか、CTRL+Fを押下し、ジャンプしたいフォルダを選択することによって、簡単に異なるフォルダへジャンプすることができます。
  3. プロパティシートに格子線が表示されるようになりました。また、文字列を入力するプロパティで 広域表示(F6)が可能になりました。
     
 

Ver9.01J SP2a での改善内容 (Top)

モデル (Top)

  • 項目モデルに設定されたコントロールモデルが、モデルの追加/削除等によりリンクが切れる件に対応しました。

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

  • テーブルリポジトリでのAPGとチェックアウト/チェックインが重なった場合に異常終了する件に対応しました。この対応によって、テーブルリポジトリをオープンしているユーザがいる場合、テーブルリポジトリがロックされチェックインできなくなります。

フォームエディタ (Top)

  • コントロールパレットのコンボボックス上で右クリックした時のメニューから、ソーステーブルを指定したコンボボックスのモデルを選択して、GUIフォーム画面にレイアウトした場合、プログラムのチェック時、または実行時にMagic が異常終了する件に対応しました。

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

  • NSAPIのリクエスタがロードできない件に対応しました。
  • サウンドコントロールのサウンドファイル名パラメータが機能しない件に対応しました。

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

  • 終了時URLの有効桁数を256バイトから1024バイトに拡張しました。
  • イベント起動を255回実行するとMagicエンジンが異常終了する件に対応しました。
  • 取消アクションの後でデータを修正するとMagicエンジンが異常終了する件に対応しました。
  • 書式のマスク文字に全角文字が含まれる場合、末尾のデータがカットされる件に対応しました。
  • 00年と29日以降の組み合わせの日付を入力した場合、レスポンスが遅くなり、日付の正当性チェックが行われない件に対応しました。
  • ブラウザクライアントの技術資料を添付しました。

パーティショニング機能 (Top)

  • MRBから起動したMagicをALT+F4で終了させるとMagicが異常終了する件に対応しました。

リポジトリ入出力 (Top)

  • Ver8プログラムをVer9 SP2に移行する時、マージを使用して複数のデータ出力コマンドを使用している場合、フォーム番号がずれる件に対応しました。
  • リポジトリ出入力を行なうと、データコントロール/ソーステーブル/範囲の設定が変更される件に対応しました。

その他 (Top)

  • 処理テーブルでコールのパラメータにスキップが入っている行をコピーしてペーストすると、スキップのチェックが外れる件に対応しました。
  • [コールリモート]コマンドの行をコピー/ペーストすると、[パラメータ]の[名前]欄がコピーされず、空白になる件に対応しました。
  • バックグラウンドモードでDELAY関数実行中に、CPU使用率が100%になる件に対応しました。
  以上